Bug#241034: xlibs: Meta key not working in emacs with XkbOptions altwin:left_meta_win
Package: xlibs
Version: 4.3.0-7
Severity: normal
The meta key stopped working after upgrading to XFree86 4.3. This is with
XkbOptions set to "altwin:left_meta_win, compose:menu". It used to work with
XFree86 4.2.x. The left windows-key was Meta.
When I remove the XkbOptions I can use left-Alt as Meta key. When I use
altwin:meta_win, the windows key works as Meta, but the AltGr key becomes
Alt_R and I can't access the 3rd mapping of certain keys (making the german
keyboard useless). That's why I really want to use the left_alt_meta option.
Here is the relevant part of my XF86Config-4:
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xfree86"
Option "XkbModel" "pc105"
Option "XkbLayout" "de"
# Option "XkbOptions" "altwin:left_meta_win, compose:menu"
# Option "XkbOptions" "altwin:meta_win"
EndSection
I made some experiments with xev, once with altwin:left_meta_win,compose:menu,
once without it. It's funny that Alt_L+X produces the same result in both
cases, but with the XkbOptions emacs doesn't recognize Alt_L+X. :-/
= XkbOptions "altwin:left_meta_win, compose:menu" =
Meta-combinations in emacs don't work. Any more. With XFree86 4.2.x
it used to work with the left Windoze key as Meta.
== Alt_L+X ==
KeyPress event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 92983, (240,156), root:(245,202),
state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes: ""
KeyPress event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 93296, (240,156), root:(245,202),
state 0x8, keycode 53 (keysym 0x78, x), same_screen YES,
XLookupString gives 1 bytes: "x"
KeyRelease event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 93344, (240,156), root:(245,202),
state 0x8, keycode 53 (keysym 0x78, x), same_screen YES,
XLookupString gives 1 bytes: "x"
KeyRelease event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 93475, (240,156), root:(245,202),
state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes: ""
== Windows+X ==
KeyPress event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 95422, (240,156), root:(245,202),
state 0x0, keycode 115 (keysym 0xffe7, Meta_L), same_screen YES,
XLookupString gives 0 bytes: ""
KeyPress event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 95771, (240,156), root:(245,202),
state 0x40, keycode 53 (keysym 0x78, x), same_screen YES,
XLookupString gives 1 bytes: "x"
KeyRelease event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 95864, (240,156), root:(245,202),
state 0x40, keycode 53 (keysym 0x78, x), same_screen YES,
XLookupString gives 1 bytes: "x"
KeyRelease event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 95916, (240,156), root:(245,202),
state 0x40, keycode 115 (keysym 0xffe7, Meta_L), same_screen YES,
XLookupString gives 0 bytes: ""
= No XkbOptions =
Meta combinations in Emacs work, with the left Alt key as Meta.
== Alt_L+X ==
KeyPress event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 24829, (444,229), root:(449,275),
state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes: ""
KeyPress event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 25232, (444,229), root:(449,275),
state 0x8, keycode 53 (keysym 0x78, x), same_screen YES,
XLookupString gives 1 bytes: "x"
KeyRelease event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 25385, (444,229), root:(449,275),
state 0x8, keycode 53 (keysym 0x78, x), same_screen YES,
XLookupString gives 1 bytes: "x"
KeyRelease event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 25411, (444,229), root:(449,275),
state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes: ""
= Windows+X ==
KeyPress event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 26413, (444,229), root:(449,275),
state 0x0, keycode 115 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes: ""
KeyPress event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 26746, (444,229), root:(449,275),
state 0x40, keycode 53 (keysym 0x78, x), same_screen YES,
XLookupString gives 1 bytes: "x"
KeyRelease event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 26862, (444,229), root:(449,275),
state 0x40, keycode 53 (keysym 0x78, x), same_screen YES,
XLookupString gives 1 bytes: "x"
KeyRelease event, serial 24, synthetic NO, window 0x2600001,
root 0x3f, subw 0x0, time 27134, (444,229), root:(449,275),
state 0x40, keycode 115 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes: ""
-- Package-specific info:
Keyboard-related contents of XFree86 X server log file
/var/log/XFree86.0.log:
(==) Using config file: "/etc/X11/XF86Config-4"
(==) ServerLayout "Default Layout"
(**) |-->Screen "Default Screen" (0)
(**) | |-->Monitor "LCD"
(**) | |-->Device "S3 Savage8"
(**) |-->Input Device "Generic Keyboard"
(**) Option "XkbRules" "xfree86"
(**) XKB: rules: "xfree86"
(**) Option "XkbModel" "pc105"
(**) XKB: model: "pc105"
(**) Option "XkbLayout" "de"
(**) XKB: layout: "de"
(==) Keyboard: CustomKeycode disabled
(**) |-->Input Device "Generic Mouse"
(**) |-->Input Device "Synaptics"
(WW) The directory "/usr/lib/X11/fonts/cyrillic" does not exist.
Entry deleted from font path.
(WW) `fonts.dir' not found (or not valid) in "/var/lib/defoma/x-ttcidfont-conf.d/dirs/CID".
--
(**) SAVAGE(0): XvMC is enabled
(==) RandR enabled
(II) Initializing built-in extension MIT-SHM
(II) Initializing built-in extension XInputExtension
(II) Initializing built-in extension XTEST
(II) Initializing built-in extension XKEYBOARD
(II) Initializing built-in extension LBX
(II) Initializing built-in extension XC-APPGROUP
(II) Initializing built-in extension SECURITY
(II) Initializing built-in extension XINERAMA
(II) Initializing built-in extension XFree86-Bigfont
(II) Initializing built-in extension RENDER
(II) Initializing built-in extension RANDR
(II) Keyboard "Generic Keyboard" handled by legacy driver
(**) Option "Protocol" "ImPS/2"
(**) Generic Mouse: Protocol: "ImPS/2"
(**) Option "SendCoreEvents" "true"
(**) Generic Mouse: always reports core events
(**) Option "CorePointer"
XFree86 X server log files on system:
-rw-r--r-- 1 root root 42401 2004-03-30 14:30 /var/log/XFree86.0.log
-- System Information:
Debian Release: testing/unstable
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.1
Locale: LANG=de_DE.ISO-8859-1, LC_CTYPE=de_DE.ISO-8859-1
Versions of packages xlibs depends on:
ii libice6 4.3.0-7 Inter-Client Exchange library
ii libsm6 4.3.0-7 X Window System Session Management
ii libx11-6 4.3.0-7 X Window System protocol client li
ii libxext6 4.3.0-7 X Window System miscellaneous exte
ii libxft1 4.3.0-7 FreeType-based font drawing librar
ii libxi6 4.3.0-7 X Window System Input extension li
ii libxmu6 4.3.0-7 X Window System miscellaneous util
ii libxmuu1 4.3.0-7 lightweight X Window System miscel
ii libxp6 4.3.0-7 X Window System printing extension
ii libxpm4 4.3.0-7 X pixmap library
ii libxrandr2 4.3.0-7 X Window System Resize, Rotate and
ii libxt6 4.3.0-7 X Toolkit Intrinsics
ii libxtrap6 4.3.0-7 X Window System protocol-trapping
ii libxtst6 4.3.0-7 X Window System event recording an
ii xlibs-data 4.3.0-7 X Window System client data
-- no debconf information
Reply to: