To reproduce, first reset all XKB options $ setxkbmap -option -option srvrkeys:none Now press control-shift-x and watch correct result in xev $ xev ... KeyPress event, serial 30, synthetic NO, window 0x3400001, root 0x72, subw 0x0, time 18906299, (54,126), root:(1269,151), state 0x0, keycode 37 (keysym 0xffe3, Control_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 30, synthetic NO, window 0x3400001, root 0x72, subw 0x0, time 18906303, (54,126), root:(1269,151), state 0x4, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 30, synthetic NO, window 0x3400001, root 0x72, subw 0x0, time 18909298, (54,126), root:(1269,151), state 0x5, keycode 53 (keysym 0x58, X), same_screen YES, XLookupString gives 1 bytes: (18) "?" XmbLookupString gives 1 bytes: (18) "?" XFilterEvent returns: False Control-Shift-X is correctly reported as an event. Now swap control and caps-lock keys. $ setxkbmap -option -option srvrkeys:none,ctrl:swapcaps ... and try the same excercise again: $ xev ... KeyPress event, serial 30, synthetic NO, window 0x3400001, root 0x72, subw 0x0, time 19055073, (66,94), root:(1279,119), state 0x0, keycode 66 (keysym 0xffe3, Control_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 30, synthetic NO, window 0x3400001, root 0x72, subw 0x0, time 19056614, (66,94), root:(1279,119), state 0x4, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False And that's it, pressing x in addition to control and shift does not generate an event. Interestingly, not all control-shift-keys get killed this way. E.g., for me, the effect occurs only for the key column containing x,s,w,2. My keyboard is an IBM Model M connected via PS/2 to a Dell Latitude C810 laptop running Gentoo Linux, kernel 2.4.27. XKB is set as follows: $ setxkbmap -print xkb_keymap { xkb_keycodes { include "xfree86+aliases(qwerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete" }; xkb_symbols { include "pc/pc(pc104)+pc/us+ctrl(swapcaps)+srvr_ctrl(no_srvr_keys)" }; xkb_geometry { include "pc(pc104)" }; }; Changing the keyboard type to pc101 and pc102 does not affect the misbehavior I observe. Reproducible: Always Steps to Reproduce: see details Actual Results: see details Expected Results: see details see details
Please reopen if this remains a problem with modular X and xkeyboard-config.