hwdb ファイルを使用すると、 USB キーボードの /etc/udev/hwdb.d/99-keyboard.hwdb
左キーを次のキーとして再マップできます。AltCtrl
keyboard:usb:v*p*
KEYBOARD_KEY_700e2=leftctrl
これは、左Shiftキーをキーとして再マップしようとした場合にも機能しますCtrl。
Caps Lockしかし、キーとして再マップしようとするとCtrl、機能しません。
keyboard:usb:v*p*
KEYBOARD_KEY_70039=leftctrl
実行中はevtest
、動作しているはずです。
Event: time 1399438713.757082, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70039
Event: time 1399438713.757082, type 1 (EV_KEY), code 29 (KEY_LEFTCTRL), value 1
Event: time 1399438713.757082, -------------- SYN_REPORT ------------
Event: time 1399438713.885078, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e0
Event: time 1399438713.885078, type 1 (EV_KEY), code 29 (KEY_LEFTCTRL), value 0
Event: time 1399438713.885078, -------------- SYN_REPORT ------------
また、私が試した他の非修飾キー、たとえば では機能しませんZ。
次のように、USB 以外のキーボードのCaps Lock左キーにマッピングすることも試みました。Ctrl
keyboard:dmi:bvn*:bvr*:bd*:svn*:pn*:pvr*
KEYBOARD_KEY_3a=leftctrl
これは完璧に動作します。Fedora 20 と Arch Linux で、いくつかの異なる USB および非 USB キーボードを使用して udev バージョン 208 と 212 を試しました。
USBキーボードで非修飾キーをCaps Lock修飾キーに再マッピングするにはどうすればいいですか?Ctrlユーデブ?
アップデート
左キーCtrl自体が別のキーに再マップされている場合、再マップされたキーは左キーとして機能し始めますCtrl。例:
keyboard:usb:v*p*
KEYBOARD_KEY_700e0=grave
KEYBOARD_KEY_70035=esc
KEYBOARD_KEY_70039=leftctrl
KEYBOARD_KEY_70029=capslock
この動作は、再マップされたキーと元のキーの両方が修飾子として残る可能性がある非 USB キーボードとは異なります。