emacs-devel
[Top][All Lists]
Advanced

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

Re: New Context Menu


From: Yuri Khan
Subject: Re: New Context Menu
Date: Wed, 25 Aug 2021 02:41:56 +0700

On Tue, 24 Aug 2021 at 23:06, Ergus <spacibba@aol.com> wrote:

> It is not wrong actually. Because keys like [menu] require an
> alternative for those that don't have such a key. That's why in some
> emulators they are the same sequence than some other complex
> combinations like S-<f6> or C-S-<f6>; or some keys not present in our
> keyboards anymore (like <f15>) but can be emulated with combinations.

The alternative for people who don’t have Menu is Shift+F10. Has been
since Windows 95 and is adopted by GTK applications. And wxWidgets
applications. And maybe other X toolkits as well.

Shift+F6 is “go to previous pane” in Windows guidelines. Leave that
for people who want an easier key than C-- C-x o.

What I’m opposed to is doing things in an application to cover for a
design flaw in a single terminal emulator.

> >* Push for terminfo to include a string capability that indicates the
> >sequence sent by the Menu key. Push for the terminfo database to
> >include that capability for major terminal emulators.
> >
> I already discussed this with the xterm developer, but the current
> translation is direct and does not rely on tricks in the emulator
> side. Xterm actually can distinguish between them, but I can't force
> every emacs user to use xterm because it is very limited in many
> aspects.

How is it direct? The evdev keycode <MENU> is 135. CSI 2 9 ~ is the
VT220 sequence for F16; in evdev, <FK16> is 194.

(F16 also somewhat explains rxvt’s Shift+F6, by pretending Shift+F<n>
is F<10+n>. Still wrong, because there are 12 function keys! Also
because one can build a keyboard that has both F16 and Menu, as USB
HID Tables assign different codes to these.)

> Actually the recommended terminal emulator to work with emacs is
> xterm. It is the most compatible and actually was a topic of a previous
> discussion/question I did long time ago.

The most compatible with what? VT220? Not relevant nowadays.

PC keyboard that most everybody has on their desk? No.

> xterm allows to distinguish between S-<f6> and the [menu] sequence, they
> are different. But urxvt and many others don't; so that will imply that
> in urxvt, the context menu will take at least 3 keys when bound to
> [S-f10]. Because binding to [menu] will also take [S-f6]. That's what I
> want to avoid. Also because S-<f10> is already taken.

To avoid having Menu take Shift+F6, get rxvt to use different
sequences for Menu and Shift+F6.



reply via email to

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