Package: xbase-clients Version: 4.3.0-2 If you put in XF86Config4 XkbOption "XkbLayout" "us,lt" or change the keyboard layout directly with setxkbmap -layout "us,lt" -option "grp:ctrl_shift_toggle" xmodmap -pm prints shift Shift_L (0x32), Shift_R (0x3e) lock Caps_Lock (0x42) control Control_L (0x25), Control_R (0x6d) mod1 Alt_L (0x40), Alt_R (0x71) mod2 Num_Lock (0x4d) mod3 mod4 Super_L (0x73), Super_R (0x74) mod5 Alt_R (0x71)Thus Alt_R is modifier mod1 and mod5. Such situation renders xemacs21 pretty unusuable. When pressing Alt it the issues warning
(1) (key-mapping/warning) XEmacs: Alt_R (0x71) generates both Mod1 and Mod5, which is nonsensical.
so you practically can't use any meta key shortcuts in xemacs21 and that means that you can't practicaly use xemacs.
With such configuration setxkbmap -print produces xkb_keymap { xkb_keycodes { include "xfree86+aliases(qwerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete" };xkb_symbols { include "pc/pc(pc105)+pc/us+pc/lt:2+group (ctrl_shift_toggle)" };
xkb_geometry { include "pc(pc105)" }; }; Looking at the file /etc/X11/xkb/symbols/pc you can find lines default xkb_symbols "pc104" { include "pc/pc(basic)" key <LALT> { [ Alt_L, Meta_L ] }; key <RALT> { [ Alt_R, Meta_R ] }; key <LWIN> { [ Super_L ] }; key <RWIN> { [ Super_R ] }; key <MENU> { [ Menu ] }; // modifier mappings modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R }; modifier_map Mod4 { Super_L, Super_R }; }; xkb_symbols "pc105" { include "pc/pc(pc104)" key <LSGT> { type[Group1] = "FOUR_LEVEL", [ less, greater, bar, brokenbar ] }; }; In the file /etc/X11/xkb/symbols/lt there are lines <...skipped> partial default alphanumeric_keys modifier_keys xkb_symbols "basic" { <...skipped> key <RALT> { type[Group1]="TWO_LEVEL", [ ISO_Level3_Shift, Multi_key ] }; modifier_map Mod5 { <RALT> }; }; <...skipped>Thus key RALT or Alt_R in lt layout is assigned to modifier Mod5 and thus the confusion is created.
I am pointing out the problem with lt layout, yet this problem may occur using other layouts.
Solutions to the problem:1. Use setxkbmap -layout "lt,us" (us and lt interchanged places, this fixes the problem)
2. Comment lines key <RALT> { type[Group1]="TWO_LEVEL", [ ISO_Level3_Shift, Multi_key ] }; modifier_map Mod5 { <RALT> }; 3. Use setxkbmap -layout "lt(lt_us),lt".in file /etc/X11/xkb/symbols/lt since in the basic lt keyboard variant no third level letters are used.
I use up to date Debian Sid with kernel 2.4.22 Mpiktas
Attachment:
pgph3HCCKfHdV.pgp
Description: PGP signature