branch: master commit 19cc1be6ffbe16a6c6b86ec202ffc83e614e451b Author: Oleh Krehel <ohwoeo...@gmail.com> Commit: Oleh Krehel <ohwoeo...@gmail.com>
Use `unwind-protect' for :after-exit * hydra.el (hydra--make-defun): Update. This change makes "C-g" work for this hydra: (defhydra hydra-goto-line (global-map "M-g" :pre (linum-mode 1) :after-exit (linum-mode -1) :exit t) ("g" goto-line "line") ("c" goto-char "char")) Re #90 --- hydra.el | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) diff --git a/hydra.el b/hydra.el index bfb003b..3dd7459 100644 --- a/hydra.el +++ b/hydra.el @@ -579,8 +579,11 @@ BODY-AFTER-EXIT is added to the end of the wrapper." ,@(when body-pre (list body-pre)) ,@(if (memq color '(blue teal)) `((hydra-keyboard-quit) - ,(when cmd `(call-interactively #',cmd)) - ,@(when body-after-exit (list body-after-exit))) + ,(if body-after-exit + `(unwind-protect + ,(when cmd `(call-interactively #',cmd)) + ,body-after-exit) + (when cmd `(call-interactively #',cmd)))) (delq nil `(,(when cmd