[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#71277: 30.0.50; last-prefix-arg lost when universal-argument used
From: |
Eli Zaretskii |
Subject: |
bug#71277: 30.0.50; last-prefix-arg lost when universal-argument used |
Date: |
Thu, 30 May 2024 15:14:26 +0300 |
> Date: Thu, 30 May 2024 12:47:29 +0100
> From: Sean Whitton via "Bug reports for GNU Emacs,
> the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
>
> (defun counter ()
> (interactive)
> (when (eq last-command this-command)
> (setq current-prefix-arg
> (+ (prefix-numeric-value current-prefix-arg)
> (prefix-numeric-value last-prefix-arg))))
> (message "%s!" (prefix-numeric-value current-prefix-arg)))
> (global-set-key "\M-." #'counter)
>
> If you type M-. M-. M-. then you see "3!" as expected.
>
> Similarly if you type "C-u M-. M-. M-." then you see "6!".
>
> However, if you type "M-. M-. C-u M-." then you get "5!".
>
> Unlses something is wrong with my arithmetic, this is not correct.
> You should get "6!" after the third example too.
> The use of C-u clobbers last-prefix-arg, basically.
>
> I believe this will fix it:
Thanks, I'm adding Stefan to this discussion.