bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#58747: 28.2; local-function-key-map is not used when used with input


From: Stefan Monnier
Subject: bug#58747: 28.2; local-function-key-map is not used when used with input-decode-map and modifier
Date: Thu, 27 Oct 2022 12:42:27 -0400
User-agent: Gnus/5.13 (Gnus v5.13)

Eli Zaretskii [2022-10-27 19:10:42] wrote:
>> Date: Mon, 24 Oct 2022 01:06:49 +0800
>> From:  Lin Jian via "Bug reports for GNU Emacs,
>>  the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
>> 
>> 
>> Steps to reproduce this bug:
>> 1. emacs -q
>> 2. (define-key input-decode-map [?w] [a-not-used-symbol-xxx-0])
>> 3. (define-key local-function-key-map [a-not-used-symbol-xxx-0] 
>> [a-not-used-symbol-xxx-1])
>> 4. (define-key key-translation-map [a-not-used-symbol-xxx-1] 
>> [a-not-used-symbol-xxx-2])
>> 5. (define-key key-translation-map [a-not-used-symbol-xxx-0] 
>> [a-not-used-symbol-xxx-3])
>> 6. C-h k w
>> 7. check the *Messages* buffer, you will see
>> 
>>   <a-not-used-symbol-xxx-2> (translated from w) is undefined
>> 
>>   This is good.
>> 8. C-h k C-x w
>> 9. check the *Messages* buffer, you will see
>> 
>>   C-x <a-not-used-symbol-xxx-3> (translated from C-x w) is undefined
>> 
>>   I think this is a bug, which means local-function-key-map is not
>>   used. The expected result should be
>> 
>>   C-x <a-not-used-symbol-xxx-2> (translated from C-x w) is undefined
>
> Stefan, any comments?

Great bug report, thank you.  Intriguing.
:-)

The corresponding code is quite tricky.
Offhand I can't guess what's going on here, sorry.

It will probably take single stepping through the `read_key_sequence`
monster to try and figure out the reason (and maybe even end up
discovering that it's a "feature", or more specifically that fixing it
without breaking something else is nigh-on impossible).


        Stefan






reply via email to

[Prev in Thread] Current Thread [Next in Thread]