dimanche 30 novembre 2014

is this a keyboard hardware limitation?


I have remapped Caps_Lock to Ctrl_L on an ancient mechanical keyboard.


It is still impossible to use the caps lock key to produce key combinations like C-e.


xev shows the following sequences are received when holding caps lock and pressing the e key:



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


Only when holding the actual left Ctrl key and pressing e is it producing the expected ^E control sequence:



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


As it's shown that Caps_Lock's XKeysymToKeycode returns keycode: 37 I would like to know if it is possible to handle this in the event that it is a hardware limitation.


The keyboard is from an Apple IIcI, a computer was released in 1989.


What do you think could be causing this?



Aucun commentaire:

Enregistrer un commentaire