evil-mc
evil-mc copied to clipboard
evil-undo (`u`) unaligns the cursors
evil-undo
(u
) unaligns the cursors,
undo
(C-/
) keeps them aligned.
Reproduction steps
With multiple words in a buffer.
abcdef
abcdef
abcdef
- In evil normal state, create evil-mc cursors on all occurrences by pressing:
grm
The cursors appear at the end of the words.
abcde[f]
abcde[f]
abcde[f]
- Move back the cursors to the left twice:
hh
abc[d]ef
abc[d]ef
abc[d]ef
- Enter evil insert state:
i
abc|def
abc|def
abc|def
- Type a character:
x
abcx|def
abcx|def
abcx|def
- Exit to evil normal state:
esc
abc[x]def
abc[x]def
abc[x]def
Move the cursors to the beginning of the words: b
[a]bxcdef
[a]bxcdef
[a]bxcdef
Undo: u
(evil-undo
)
Observed
The real cursor moved to the position where the x
was.
The fake cursors remain at the beginning of the words.
abc[d]ef
[a]bcdef
[a]bcdef
Expected
The cursors should remain aligned.
This behavior is observed when the Emacs undo command is used:
C-/
(undo
)
All cursors move to the positions where the x
's were.
abc[d]ef
abc[d]ef
abc[d]ef
The cursors should probably stay where they were when the undo command was called.
[a]bcdef
[a]bcdef
[a]bcdef
Notes
The same behavior is also observed when the words are unaligned.
-
evil-undo
(u
)
abc[d]ef
[a]bcdef
[a]bcdef
-
undo
(C-/
)
abc[d]ef
abc[d]ef
abc[d]ef
System Info
evil-mc-20210730.1752 GNU Emacs 27.2 (build 1, x86_64-w64-mingw32) of 2021-03-26 Windows 21H1