[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Fwd: C-[ is undefined
From: |
John Shahid |
Subject: |
Re: Fwd: C-[ is undefined |
Date: |
Fri, 27 Jul 2018 09:24:33 -0400 |
User-agent: |
mu4e 1.1.0; emacs 27.0.50 |
Ben Bacarisse <ben.lists@bsb.me.uk> writes:
[...]
>>>> Short story: ~C-x @ c [~ results in "C-[ is undefined" but I expected
>>>> it to be the Meta prefix like in for example ~C-[ t~ for ~M-t~.
>>>
>>> I would expect C-x @ c [ to be the same as C-[
>>
>> Did you try? For me it is not the same which is what I wanted to say
>> in the first place.
>
> Yes, I tried it, but my interpretation of the result ("C-[" is
> undefined) was that C-x @ c [ was a way to generate a "key" that could
> not otherwise be typed.
>
> That's kind of what happens. For example, you can bind C-[ this way and
> still use C-[ to get the ESC- prefix.
>
> However, that seems like an unlikely explanation! It is probably
> something to do with translated key sequences. ESC and C-[ are not
> exactly the same, but I am not expert enough to explain the way in which
> they differ.
I think there is an implicit assumption in this thread that Emacs is
receiving key press events for both the 'Control' and '[' keys. I tried
this on my system using 'xev' and it receives a KeyPress event for
'Control' but as soon as I hit '[' the window receives a KeyPress event
for Escape (i.e. '0x1b'). My conclusion is that Emacs doesn't even know
that you pressed 'C-['.
You can probably achieve the same result by translating 'C-[' to
'Escape' in the 'key-translation-map'. This map is used after
'local-function-key-map' where the 'event-apply-control-modifier'
applies the control modifier. Another idea is to add an advice to
'event-apply-control-modifier'.
cheers,
-js
Re: C-[ is undefined, Noam Postavsky, 2018/07/27