--- Begin Message ---
Subject: |
26.0.50; this-command-keys and interactive input |
Date: |
Sat, 24 Jun 2017 07:58:47 +0200 |
Hello,
Evaluate this:
(defun test (arg)
(interactive (list (read-from-minibuffer "Input: ")))
(message "%S" (cons this-command (this-command-keys)))
arg)
(global-set-key [f12] #'test)
where f12 stands for some random key sequence.
Hit f12 and give any input. I get the following message:
(test . "^M")
I would expect (test . f12).
Obviously, `this-command-keys' returns the key confirming the input
instead of the key that has invoked the command. This contradicts the
descriptions in the documentation (docstring and manual). The docs only
mention an exception when a command calls `read-key-sequence', but this
is not the case here. FWIW, I would prefer fixing this over changing
the docs.
Thanks,
Michael.
In GNU Emacs 26.0.50 (build 3, x86_64-pc-linux-gnu, GTK+ Version 3.22.11)
of 2017-06-19 built on drachen
Repository revision: 1b75af59b305867c89271905be72a05d06a4eff4
Windowing system distributor 'The X.Org Foundation', version 11.0.11903000
System Description: Debian GNU/Linux 9.0 (stretch)
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#27470: 26.0.50; this-command-keys and interactive input |
Date: |
Fri, 28 Jul 2017 15:41:46 +0300 |
> From: Michael Heerdegen <address@hidden>
> Cc: address@hidden
> Date: Sun, 23 Jul 2017 17:44:21 +0200
>
> Eli Zaretskii <address@hidden> writes:
>
> > Michael, any findings so far?
>
> No, everything seems to be fine.
>
> > Do you recommend that we push that change?
>
> It solves my problem, so - yes! But I can't judge whether it could
> potentially cause any trouble. Anyway, it's small and easily
> revertible, so I see no reason to hold it back.
Pushed to master.
Thanks for testing this.
--- End Message ---