diff options
| author | Jonas Bernoulli <jonas@bernoul.li> | 2025-02-26 16:47:31 +0100 |
|---|---|---|
| committer | Jonas Bernoulli <jonas@bernoul.li> | 2025-02-26 16:47:31 +0100 |
| commit | d3500a804e41e4e4f58a534019518e4fcd18f6bf (patch) | |
| tree | 94de76524f125937b18481448e1368ded9bcc1b5 /lisp | |
| parent | 40f0a2dd6f545d6144c45f25633ae37c5b5608ff (diff) | |
transient--wrap-command: Rename internal variable
`suffix' is not appropriate because when the prefix allows invocation
of non-suffixes, then this can be a non-suffix.
We cannot just us `this-command' directly because the command may
change the value of that and then we would fail to remove our advice.
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/transient.el | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/lisp/transient.el b/lisp/transient.el index 4b06514..4f760af 100644 --- a/lisp/transient.el +++ b/lisp/transient.el @@ -2655,8 +2655,8 @@ value. Otherwise return CHILDREN as is.") (defun transient--wrap-command () (static-if (>= emacs-major-version 30) (letrec - ((prefix transient--prefix) - (suffix this-command) + ((cmd this-command) + (prefix transient--prefix) (advice (lambda (fn &rest args) (interactive @@ -2664,7 +2664,7 @@ value. Otherwise return CHILDREN as is.") (let ((abort t)) (unwind-protect (prog1 (let ((debugger #'transient--exit-and-debug)) - (if-let* ((obj (transient-suffix-object suffix)) + (if-let* ((obj (transient-suffix-object cmd)) (grp (oref obj parent)) (adv (or (oref obj advice*) (oref grp advice*)))) @@ -2675,12 +2675,12 @@ value. Otherwise return CHILDREN as is.") (when abort (when-let ((unwind (oref prefix unwind-suffix))) (transient--debug 'unwind-interactive) - (funcall unwind suffix)) - (advice-remove suffix advice) + (funcall unwind cmd)) + (advice-remove cmd advice) (oset prefix unwind-suffix nil)))))) (unwind-protect (let ((debugger #'transient--exit-and-debug)) - (if-let* ((obj (transient-suffix-object suffix)) + (if-let* ((obj (transient-suffix-object cmd)) (grp (oref obj parent)) (adv (or (oref obj advice) (oref grp advice) @@ -2690,24 +2690,24 @@ value. Otherwise return CHILDREN as is.") (apply fn args))) (when-let ((unwind (oref prefix unwind-suffix))) (transient--debug 'unwind-command) - (funcall unwind suffix)) - (advice-remove suffix advice) + (funcall unwind cmd)) + (advice-remove cmd advice) (oset prefix unwind-suffix nil))))) (when (symbolp this-command) - (advice-add suffix :around advice '((depth . -99)))) + (advice-add cmd :around advice '((depth . -99)))) (cl-assert (>= emacs-major-version 30) nil "Emacs was downgraded, making it necessary to recompile Transient")) ;; (< emacs-major-version 30) - (let* ((prefix transient--prefix) - (suffix this-command) + (let* ((cmd this-command) + (prefix transient--prefix) (advice nil) (advice-interactive (lambda (spec) (let ((abort t)) (unwind-protect (prog1 (let ((debugger #'transient--exit-and-debug)) - (if-let* ((obj (transient-suffix-object suffix)) + (if-let* ((obj (transient-suffix-object cmd)) (grp (oref obj parent)) (adv (or (oref obj advice*) (oref grp advice*)))) @@ -2718,14 +2718,14 @@ value. Otherwise return CHILDREN as is.") (when abort (when-let ((unwind (oref prefix unwind-suffix))) (transient--debug 'unwind-interactive) - (funcall unwind suffix)) - (advice-remove suffix advice) + (funcall unwind cmd)) + (advice-remove cmd advice) (oset prefix unwind-suffix nil)))))) (advice-body (lambda (fn &rest args) (unwind-protect (let ((debugger #'transient--exit-and-debug)) - (if-let* ((obj (transient-suffix-object suffix)) + (if-let* ((obj (transient-suffix-object cmd)) (grp (oref obj parent)) (adv (or (oref obj advice) (oref grp advice) @@ -2735,14 +2735,14 @@ value. Otherwise return CHILDREN as is.") (apply fn args))) (when-let ((unwind (oref prefix unwind-suffix))) (transient--debug 'unwind-command) - (funcall unwind suffix)) - (advice-remove suffix advice) + (funcall unwind cmd)) + (advice-remove cmd advice) (oset prefix unwind-suffix nil))))) (setq advice `(lambda (fn &rest args) (interactive ,advice-interactive) (apply ',advice-body fn args))) (when (symbolp this-command) - (advice-add suffix :around advice '((depth . -99))))))) + (advice-add cmd :around advice '((depth . -99))))))) (defun transient--premature-post-command () (and (equal (this-command-keys-vector) []) |
