No-op set-repeater! later if +evil-repeat-keys is nil

This commit is contained in:
Henrik Lissner 2019-11-05 14:55:53 -05:00
parent df36e7f4d3
commit 9113eab65a
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395

View file

@ -346,42 +346,42 @@ directives. By default, this only recognizes C directives.")
;; ;;
;;; Keybinds ;;; Keybinds
(when +evil-repeat-keys (defmacro set-repeater! (command next-func prev-func)
(defmacro set-repeater! (command next-func prev-func) "Makes ; and , the universal repeat-keys in evil-mode.
"Makes ; and , the universal repeat-keys in evil-mode.
To change these keys see `+evil-repeat-keys'." To change these keys see `+evil-repeat-keys'."
(let ((fn-sym (intern (format "+evil/repeat-%s" (doom-unquote command))))) (let ((fn-sym (intern (format "+evil/repeat-%s" (doom-unquote command)))))
`(progn `(progn
(defun ,fn-sym (&rest _) (defun ,fn-sym (&rest _)
(when +evil-repeat-keys
(evil-define-key* 'motion 'local (evil-define-key* 'motion 'local
(kbd (car +evil-repeat-keys)) #',next-func (kbd (car +evil-repeat-keys)) #',next-func
(kbd (cdr +evil-repeat-keys)) #',prev-func)) (kbd (cdr +evil-repeat-keys)) #',prev-func)))
(advice-add #',command :after-while #',fn-sym)))) (advice-add #',command :after-while #',fn-sym))))
;; n/N ;; n/N
(set-repeater! evil-ex-search-next evil-ex-search-next evil-ex-search-previous) (set-repeater! evil-ex-search-next evil-ex-search-next evil-ex-search-previous)
(set-repeater! evil-ex-search-previous evil-ex-search-next evil-ex-search-previous) (set-repeater! evil-ex-search-previous evil-ex-search-next evil-ex-search-previous)
(set-repeater! evil-ex-search-forward evil-ex-search-next evil-ex-search-previous) (set-repeater! evil-ex-search-forward evil-ex-search-next evil-ex-search-previous)
(set-repeater! evil-ex-search-backward evil-ex-search-next evil-ex-search-previous) (set-repeater! evil-ex-search-backward evil-ex-search-next evil-ex-search-previous)
;; f/F/t/T/s/S ;; f/F/t/T/s/S
(after! evil-snipe (after! evil-snipe
(setq evil-snipe-repeat-keys nil (setq evil-snipe-repeat-keys nil
evil-snipe-override-evil-repeat-keys nil) ; causes problems with remapped ; evil-snipe-override-evil-repeat-keys nil) ; causes problems with remapped ;
(set-repeater! evil-snipe-f evil-snipe-repeat evil-snipe-repeat-reverse) (set-repeater! evil-snipe-f evil-snipe-repeat evil-snipe-repeat-reverse)
(set-repeater! evil-snipe-F evil-snipe-repeat evil-snipe-repeat-reverse) (set-repeater! evil-snipe-F evil-snipe-repeat evil-snipe-repeat-reverse)
(set-repeater! evil-snipe-t evil-snipe-repeat evil-snipe-repeat-reverse) (set-repeater! evil-snipe-t evil-snipe-repeat evil-snipe-repeat-reverse)
(set-repeater! evil-snipe-T evil-snipe-repeat evil-snipe-repeat-reverse) (set-repeater! evil-snipe-T evil-snipe-repeat evil-snipe-repeat-reverse)
(set-repeater! evil-snipe-s evil-snipe-repeat evil-snipe-repeat-reverse) (set-repeater! evil-snipe-s evil-snipe-repeat evil-snipe-repeat-reverse)
(set-repeater! evil-snipe-S evil-snipe-repeat evil-snipe-repeat-reverse) (set-repeater! evil-snipe-S evil-snipe-repeat evil-snipe-repeat-reverse)
(set-repeater! evil-snipe-x evil-snipe-repeat evil-snipe-repeat-reverse) (set-repeater! evil-snipe-x evil-snipe-repeat evil-snipe-repeat-reverse)
(set-repeater! evil-snipe-X evil-snipe-repeat evil-snipe-repeat-reverse)) (set-repeater! evil-snipe-X evil-snipe-repeat evil-snipe-repeat-reverse))
;; */# ;; */#
(set-repeater! evil-visualstar/begin-search-forward (set-repeater! evil-visualstar/begin-search-forward
evil-ex-search-next evil-ex-search-previous) evil-ex-search-next evil-ex-search-previous)
(set-repeater! evil-visualstar/begin-search-backward (set-repeater! evil-visualstar/begin-search-backward
evil-ex-search-previous evil-ex-search-next)) evil-ex-search-previous evil-ex-search-next)
;; `evil-collection' ;; `evil-collection'