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

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

Re: Make Super key work in console


From: Yuri Khan
Subject: Re: Make Super key work in console
Date: Sat, 20 Feb 2021 23:38:58 +0700

On Sat, 20 Feb 2021 at 23:16, Yuri Khan <yuri.v.khan@gmail.com> wrote:
>
> On Sat, 20 Feb 2021 at 23:08, Eli Zaretskii <eliz@gnu.org> wrote:
>
> > > > I was surprised to learn that Konsole chose to translate Super+<key>
> > > > into C-x @ s <key>, exactly what Emacs interprets back as S-<key>.
> > >
> > > Yuck!
> >
> > Why "Yuck"?  This is in no way singular: many terminal emulators
> > convert M-SOMETHING into ESC SOMETHING, at least as an option.
>
> Yuck that, too.

In case further explanation is needed:

* The fact that terminals encode functional keys, editing keys,
Alt+keys as ESC sequences has made it impossible to reliably[1] detect
a single Escape key press.

* Many terminals of VT-100 descent encode keys as CSI sequences (ESC [
…), making it impossible to reliably[1] detect a single Alt+[ key
combination.

* In application keypad mode, terminals also encode arrow keys as SS3
sequences (ESC O …), making it impossible to reliably[1] detect an
Alt+Shift+o.

[1]: yes, a 100ms timeout goes a long way, unless you’re working over
ssh on a laggy/jerky connection.

Other deficiencies of key representations in terminals include:

* Ctrl+key combinations are only defined for letter keys and select punctuation.
* Ctrl+Shift+keys are indistinguishable from Ctrl+keys.
* Alt+key combinations are Caps Lock-sensitive.
* Tab is indistinguishable from Ctrl+I, Backspace from either Ctrl+H
or Ctrl+?, and Enter from either Ctrl+J or Ctrl+M.
* There is much uncertainty about whether the sequence called F13
should mean Shift+F1 or Shift+F3.



reply via email to

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