我已重新映射Caps_Lock到Ctrl_L古老的机械键盘。
仍然不可能使用该caps lock键来产生像 之类的组合键C-e。
caps lockxev 显示按住并按下该键时会收到以下序列e:
KeyRelease event, serial 34, synthetic NO, window 0x2800001,
root 0x250, subw 0x0, time 125662314, (4,-16), root:(5,382),
state 0x4, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XKeysymToKeycode returns keycode: 37
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 34, synthetic NO, window 0x2800001,
root 0x250, subw 0x0, time 125663274, (4,-16), root:(5,382),
state 0x0, keycode 26 (keysym 0x65, e), same_screen YES,
XLookupString gives 1 bytes: (65) "e"
XmbLookupString gives 1 bytes: (65) "e"
XFilterEvent returns: False
只有当按住实际的左键Ctrl并按下时e才会产生预期的^E
控制序列:
KeyPress event, serial 34, synthetic NO, window 0x2800001,
root 0x250, subw 0x0, time 125666946, (4,-16), root:(5,382),
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 34, synthetic NO, window 0x2800001,
root 0x250, subw 0x0, time 125669530, (4,-16), root:(5,382),
state 0x4, keycode 26 (keysym 0x65, e), same_screen YES,
XLookupString gives 1 bytes: (05) "^E"
XmbLookupString gives 1 bytes: (05) "^E"
XFilterEvent returns: False
如图所示,Caps_Lock的 XKeysymToKeycode 返回 keycode: 37 我想知道如果是硬件限制,是否可以处理这个问题。
键盘来自 Apple IIcI,一款 1989 年发布的计算机。
您认为可能是什么原因造成的?