Make evil-delete invoke wgrep-mark-deletion on lines
This commit is contained in:
parent
54383a8dde
commit
8648ea0314
2 changed files with 23 additions and 1 deletions
|
@ -222,3 +222,20 @@ evil-window-move-* (e.g. `evil-window-move-far-left')"
|
||||||
(+evil--ex-match-init hl-name)
|
(+evil--ex-match-init hl-name)
|
||||||
(let ((result (car-safe (evil-ex-parse-global arg))))
|
(let ((result (car-safe (evil-ex-parse-global arg))))
|
||||||
(+evil--ex-buffer-match result hl-name nil (point-min) (point-max))))))
|
(+evil--ex-buffer-match result hl-name nil (point-min) (point-max))))))
|
||||||
|
|
||||||
|
|
||||||
|
;; --- wgrep ------------------------------
|
||||||
|
|
||||||
|
;;;###autoload (autoload '+evil-delete "feature/evil/autoload/evil" nil t)
|
||||||
|
(evil-define-operator +evil-delete (beg end type register yank-handler)
|
||||||
|
"A wrapper around `evil-delete' for `wgrep' buffers that will invoke
|
||||||
|
`wgrep-mark-deletion' on lines you try to delete."
|
||||||
|
(interactive "<R><x><y>")
|
||||||
|
(condition-case ex
|
||||||
|
(evil-delete beg end type register yank-handler)
|
||||||
|
('text-read-only
|
||||||
|
(evil-apply-on-block
|
||||||
|
(lambda (beg _)
|
||||||
|
(goto-char beg)
|
||||||
|
(call-interactively #'wgrep-mark-deletion))
|
||||||
|
beg (1- end) nil))))
|
||||||
|
|
|
@ -87,7 +87,12 @@
|
||||||
;; --- keybind fixes ----------------------
|
;; --- keybind fixes ----------------------
|
||||||
(map! ;; undo/redo for visual regions
|
(map! ;; undo/redo for visual regions
|
||||||
:v "C-u" #'undo-tree-undo
|
:v "C-u" #'undo-tree-undo
|
||||||
:v "C-r" #'undo-tree-redo)
|
:v "C-r" #'undo-tree-redo
|
||||||
|
|
||||||
|
(:after wgrep
|
||||||
|
;; a wrapper that invokes `wgrep-mark-deletion' across lines
|
||||||
|
;; you use `evil-delete' on.
|
||||||
|
:map wgrep-mode-map :n "d" #'+evil-delete))
|
||||||
|
|
||||||
|
|
||||||
;; --- evil hacks -------------------------
|
;; --- evil hacks -------------------------
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue