キーボードのキーコードを変更できますか?

キーボードのキーコードを変更できますか?

私は非標準のキーボード レイアウトの Lenovo ノートブックを持っていますが、そのキーボード レイアウトでは、右側の Shift キーの横にスラッシュ/疑問符 (/?) キーがあり、br-abnt2 のデフォルトでは、それがアポストロフィ/引用符 ('") にマッピングされていました。また、1 の横には標準のアポストロフィ/引用符キーがあります。昨日、/? キーを修正するために、br-abnt.map と xorg レイアウト ファイルを変更しました。すると、'" が /? にマッピングされていることに気付きました。

今日、私はこれら 2 つのキーをテストしましたがxev、キーコードは同じなので、一方を修復してももう一方は修復されません。

これらのキーのキーコードを変更して個別に設定することは可能ですか? どうすればこれを修正できますか?

編集:evtest最初に '" を押してから /? を押した場合の出力は次のとおりです。

Properties: Testing ... (interrupt to exit) Event: time 1525650895.009067, type 4 (EV_MSC), code 4 (MSC_SCAN), value 1c Event: time 1525650895.009067, type 1 (EV_KEY), code 28 (KEY_ENTER), value 0 Event: time 1525650895.009067, -------------- SYN_REPORT ------------ Event: time 1525650897.410587, type 4 (EV_MSC), code 4 (MSC_SCAN), value 29 Event: time 1525650897.410587, type 1 (EV_KEY), code 41 (KEY_GRAVE), value 1 Event: time 1525650897.410587, -------------- SYN_REPORT ------------ 'Event: time 1525650897.466550, type 4 (EV_MSC), code 4 (MSC_SCAN), value 29 Event: time 1525650897.466550, type 1 (EV_KEY), code 41 (KEY_GRAVE), value 0 Event: time 1525650897.466550, -------------- SYN_REPORT ------------ Event: time 1525650908.301683, type 4 (EV_MSC), code 4 (MSC_SCAN), value 29 Event: time 1525650908.301683, type 1 (EV_KEY), code 41 (KEY_GRAVE), value 1 Event: time 1525650908.301683, -------------- SYN_REPORT ------------ 'Event: time 1525650908.411541, type 4 (EV_MSC), code 4 (MSC_SCAN), value 29 Event: time 1525650908.411541, type 1 (EV_KEY), code 41 (KEY_GRAVE), value 0 Event: time 1525650908.411541, -------------- SYN_REPORT ------------

(最初のSYN_REPORTはどちらかを入力する前です)

答え1

カーネルがそれらをどのように認識するかを調べるために使用しますevtest。異なるスキャンコードを持つ場合、カーネル入力層はそれらを異なるキーコードにマッピングできます。たとえば、udevハードウェアデータベース

関連情報