branch: elpa/evil-escape
commit 1488a2c9c36a34eb3b55f7b650e6da1451acdd10
Author: Herbert Jones <jones.herb...@gmail.com>
Commit: syl20bnr <sylvain.ben...@gmail.com>

    When replaying macro, pass shadow func
    
    Currently when replaying recorded keys, keys pressed in insert mode are
    correctly inserted into the buffer.  However keys that are repeated when
    not in insert mode are ignored.  This change no longer ignores replayed
    keys that are not hit in insert mode.
    
    Fixes issue where on macro replay, f" did not move forward to the next "
    character, but movement was ignored.
---
 evil-escape.el | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/evil-escape.el b/evil-escape.el
index 98eadef464..f53989b346 100644
--- a/evil-escape.el
+++ b/evil-escape.el
@@ -152,8 +152,12 @@ with a key sequence."
                                     ',insert-func
                                     ',delete-func)
              ;; not called by the user, i.e. called by a keyboard macro
-             (when (fboundp ',insert-func)
-               (funcall ',insert-func ,(evil-escape--first-key)))))))))
+             (cond
+              ((fboundp ',insert-func)
+               (funcall ',insert-func ,(evil-escape--first-key)))
+              ((fboundp ',shadowed-func)
+               (evil-escape--setup-emacs-state-passthrough)
+               (evil-escape--execute-shadowed-func ',shadowed-func)))))))))
 
 (defun evil-escape--define-keys ()
   "Set the key bindings to escape _everything!_"

Reply via email to