GNU bug report logs -
#53003
29.0.50; Wrong key modifiers
Previous Next
Reported by: Juri Linkov <juri <at> linkov.net>
Date: Tue, 4 Jan 2022 07:53:01 UTC
Severity: normal
Found in version 29.0.50
Done: Po Lu <luangruo <at> yahoo.com>
Bug is archived. No further changes may be made.
Full log
Message #8 received at 53003 <at> debbugs.gnu.org (full text, mbox):
Juri Linkov <juri <at> linkov.net> writes:
> Some recent change broke the Hyper key modifiers.
>
> After this change typing the Hyper key with arrows shows
>
> s-<right> is undefined
>
> Before this change it was
>
> H-<right> is undefined
>
> For this key xev reports keycode 133 (keysym 0xffed, Hyper_L)
>
> In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.20, cairo version 1.16.0)
> of 2022-01-02
> Repository revision: b2167d98432a78442522b7564e22f47d75a98b6f
> Repository branch: master
>
> Configured using:
> 'configure --with-native-compilation --with-xinput2 --with-pgtk '
>
> But it also broken with this:
>
> Configured using:
> 'configure --with-native-compilation'
Please show the output of `xmodmap'.
Do you see a line where Hyper is on the same line as Super, something
like this?
mod4 Hyper_L (0x42), Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
(The keysym reported by xev does not really matter: that is not how X11
virtual modifiers work.)
Many X servers are misconfigured that way, causing Super to be
recognized as Hyper for the majority of users. The recent switch to
using XKB for detecting virtual modifiers solved that problem, but
potentially caused this one as well.
The correct solution is to remove the Hyper keys from the real modifier
Mod4, and move them to (if not already occupied by another virtual
modifier) Mod5.
But I cannot tell you how to do that in concrete until I see the
output of `xmodmap' on your system.
Thanks.
This bug report was last modified 3 years and 234 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.