Lazy-load evil-easymotion properly via keybinds #335
The package wasn't set up properly to autoload until evil-snipe did, making its functionality inaccessible without an explicit (require 'evil-easymotion)
This commit is contained in:
parent
10167b85b5
commit
eece13f2ca
2 changed files with 21 additions and 18 deletions
|
@ -156,8 +156,7 @@
|
||||||
|
|
||||||
|
|
||||||
(def-package! evil-easymotion
|
(def-package! evil-easymotion
|
||||||
:after evil-snipe
|
:commands (evilem-create evilem-default-keybindings))
|
||||||
:commands evilem-create)
|
|
||||||
|
|
||||||
|
|
||||||
(def-package! evil-embrace
|
(def-package! evil-embrace
|
||||||
|
|
|
@ -61,20 +61,24 @@
|
||||||
(do-repeat! evil-visualstar/begin-search-backward
|
(do-repeat! evil-visualstar/begin-search-backward
|
||||||
evil-ex-search-previous evil-ex-search-next))
|
evil-ex-search-previous evil-ex-search-next))
|
||||||
|
|
||||||
(after! evil-easymotion
|
;; lazy-load `evil-easymotion'
|
||||||
(let ((prefix (concat doom-leader-key " /")))
|
(map! :m "gs" #'+default/easymotion)
|
||||||
;; NOTE `evilem-default-keybinds' unsets all other keys on the prefix (in
|
(defun +default/easymotion ()
|
||||||
;; motion state)
|
(interactive)
|
||||||
|
(let ((prefix (this-command-keys)))
|
||||||
(evilem-default-keybindings prefix)
|
(evilem-default-keybindings prefix)
|
||||||
(evilem-define (kbd (concat prefix " n")) #'evil-ex-search-next)
|
(map! :map evilem-map
|
||||||
(evilem-define (kbd (concat prefix " N")) #'evil-ex-search-previous)
|
"n" (evilem-create #'evil-ex-search-next)
|
||||||
(evilem-define (kbd (concat prefix " s")) #'evil-snipe-repeat
|
"N" (evilem-create #'evil-ex-search-previous)
|
||||||
|
"s" (evilem-create #'evil-snipe-repeat
|
||||||
:pre-hook (save-excursion (call-interactively #'evil-snipe-s))
|
:pre-hook (save-excursion (call-interactively #'evil-snipe-s))
|
||||||
:bind ((evil-snipe-scope 'buffer)
|
:bind ((evil-snipe-scope 'buffer)
|
||||||
(evil-snipe-enable-highlight)
|
(evil-snipe-enable-highlight)
|
||||||
(evil-snipe-enable-incremental-highlight)))
|
(evil-snipe-enable-incremental-highlight)))
|
||||||
(evilem-define (kbd (concat prefix " S")) #'evil-snipe-repeat-reverse
|
"S" (evilem-create #'evil-snipe-repeat-reverse
|
||||||
:pre-hook (save-excursion (call-interactively #'evil-snipe-s))
|
:pre-hook (save-excursion (call-interactively #'evil-snipe-s))
|
||||||
:bind ((evil-snipe-scope 'buffer)
|
:bind ((evil-snipe-scope 'buffer)
|
||||||
(evil-snipe-enable-highlight)
|
(evil-snipe-enable-highlight)
|
||||||
(evil-snipe-enable-incremental-highlight))))))
|
(evil-snipe-enable-incremental-highlight))))
|
||||||
|
(set-transient-map evilem-map)
|
||||||
|
(which-key-reload-key-sequence prefix))))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue