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:
Henrik Lissner 2018-01-14 23:37:48 -05:00
parent 10167b85b5
commit eece13f2ca
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
2 changed files with 21 additions and 18 deletions

View file

@ -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

View file

@ -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)
:pre-hook (save-excursion (call-interactively #'evil-snipe-s)) "s" (evilem-create #'evil-snipe-repeat
:bind ((evil-snipe-scope 'buffer) :pre-hook (save-excursion (call-interactively #'evil-snipe-s))
(evil-snipe-enable-highlight) :bind ((evil-snipe-scope 'buffer)
(evil-snipe-enable-incremental-highlight))) (evil-snipe-enable-highlight)
(evilem-define (kbd (concat prefix " S")) #'evil-snipe-repeat-reverse (evil-snipe-enable-incremental-highlight)))
:pre-hook (save-excursion (call-interactively #'evil-snipe-s)) "S" (evilem-create #'evil-snipe-repeat-reverse
:bind ((evil-snipe-scope 'buffer) :pre-hook (save-excursion (call-interactively #'evil-snipe-s))
(evil-snipe-enable-highlight) :bind ((evil-snipe-scope 'buffer)
(evil-snipe-enable-incremental-highlight)))))) (evil-snipe-enable-highlight)
(evil-snipe-enable-incremental-highlight))))
(set-transient-map evilem-map)
(which-key-reload-key-sequence prefix))))