emacs-evil / emacs-evil/evil

Evil jump list is cleared on window recreation

Open
#732 3 comments 1 reaction 0 assignees View on GitHub
bug commands major
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.