From ba1488279bc857b08bf7095aad88bac575a6ec3f Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Tue, 19 Jun 2018 14:11:01 +0200 Subject: [PATCH] Fix evil-escape aborting multiedit too eagerly When evil-escape is invoked from multiedit-insert state, it erroneously quits the current multiedit session entirely. No more. This can be removed when syl20bnr/evil-escape#83 is merged. --- modules/feature/evil/config.el | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/modules/feature/evil/config.el b/modules/feature/evil/config.el index 0a6aba2ed..9bd6bba8a 100644 --- a/modules/feature/evil/config.el +++ b/modules/feature/evil/config.el @@ -248,6 +248,12 @@ variable for an explanation of the defaults (in comments). See (add-hook 'pre-command-hook #'evil-escape-pre-command-hook) (evil-define-key* '(insert replace visual operator) 'global "\C-g" #'evil-escape) :config + ;; TODO PR this upstream + (defun +evil*escape-func (ret) + (if (eq evil-state 'multiedit-insert) + #'evil-multiedit-state + ret)) + (advice-add #'evil-escape-func :filter-return #'+evil*escape-func) ;; no `evil-escape' in minibuffer (add-hook 'evil-escape-inhibit-functions #'minibufferp))