Change gzu to delete cursors in visual selection

Will still undo last cursor in normal mode.
This commit is contained in:
Henrik Lissner 2020-06-05 00:30:11 -04:00
parent 51ffacb4d9
commit 7a8bf22e41
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
2 changed files with 20 additions and 1 deletions

View file

@ -88,7 +88,7 @@
:nv "P" #'evil-mc-make-and-goto-first-cursor
:nv "q" #'evil-mc-undo-all-cursors
:nv "t" #'+multiple-cursors/evil-mc-toggle-cursors
:nv "u" #'evil-mc-undo-last-added-cursor
:nv "u" #'+multiple-cursors/evil-mc-undo-cursor
:nv "z" #'+multiple-cursors/evil-mc-toggle-cursor-here
:v "I" #'evil-mc-make-cursor-in-visual-selection-beg
:v "A" #'evil-mc-make-cursor-in-visual-selection-end)

View file

@ -101,3 +101,22 @@ FLAGS can be g and/or i; which mean the same thing they do in
(if (evil-mc-has-cursors-p)
(evil-mc-print-cursors-info "Created")
(evil-mc-message "No cursors were created"))))
;;;###autoload (autoload '+multiple-cursors/evil-mc-undo-cursor "editor/multiple-cursors/autoload/evil-mc" nil t)
(evil-define-command +multiple-cursors/evil-mc-undo-cursor ()
"Undos last cursor, or all cursors in visual region."
:repeat nil
:evil-mc t
(interactive)
(if (evil-visual-state-p)
(or (mapc (lambda (c)
(evil-mc-delete-cursor c)
(setq evil-mc-cursor-list (delq c evil-mc-cursor-list)))
(cl-remove-if-not
(lambda (pos)
(and (>= pos evil-visual-beginning)
(< pos evil-visual-end)))
evil-mc-cursor-list
:key #'evil-mc-get-cursor-start))
(message "No cursors to undo in region"))
(evil-mc-undo-last-added-cursor)))