Evil jump list is cleared on window recreation
- Dominant language
- Emacs Lisp
- Stars
- 3.9k
- Forks
- 307
- PR merge metrics
- No merged PRs in 30d
Description
Originally reported by: **Oleg Kostyuchenko (Bitbucket: [olegkst](https://bitbucket.org/olegkst), GitHub: [olegkst](https://github.com/olegkst))**
----------------------------------------
Hi,
Please do not use window id as a hash key in evil-jump.el.
If the workflow is based on "emacs --server" + emacsclient, a window id is a very ephemeral thing. Consider the following scenario:
- A user opens an emacsclient window, jumps 1000 times in some buffer and closes the window.
- Then he opens another emacsclient window and switches to the same buffer. All the 1000 jump marks are instantly lost.
Please implement a jump list storage that is able to survive a window id change.
Thanks
----------------------------------------
- Bitbucket: https://bitbucket.org/lyro/evil/issue/732
Contributor guide
Research direction
Start by reading evil-jump.el, especially how the jump list is keyed by window id. Reproduce the emacs --server and emacsclient workflow described in the issue, closing and recreating a window on the same buffer. Done means jump marks remain available after the window id changes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- emacs-lisp
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100