Dell L100キーボードでxmodmap
再マッピングAlt/キーを使用しようとしていますが、Superキーコードのインポートに問題があります。
たとえば、を使用すると、xev
キーコードは提供されません。Alt
FocusOut event, serial 36, synthetic NO, window 0x4a00001,
mode NotifyGrab, detail NotifyAncestor
FocusIn event, serial 36, synthetic NO, window 0x4a00001,
mode NotifyUngrab, detail NotifyAncestor
KeymapNotify event, serial 36, synthetic NO, window 0x0,
keys: 122 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Right Superキーに異なるキーコードを提供します。 - とxev
それぞれ。showkey
134
126
このキーコードはどうなりますか?
からキーコードを取得し、以下のファイルを試しshowkey -k
ましたが、これによりキーが再マップされる奇妙なマッピングが発生しました。xmodmap
b
clear Mod1
clear Control
keycode 125 = Meta_L
keycode 126 = Meta_R
keycode 58 = Control_L
keycode 56 = Control_L
keycode 100 = Control_R
add Control = Control_L Control_R
add Mod1 = Meta_L Meta_R
ベストアンサー1
キーボードと最終的にキーボードイベントを処理するプロセスの間には多くのアクターがあります。これの最も重要な部分は、Xシステムに独自のキーボード処理層があり、XがネイティブLinuxシステムとは異なり、キー入力とは異なる「キーコード」を接続することです。このshowkey
コマンドは、Linuxの基本システム用語のキーコードを表示します。xmodmap
Xキーコードが必要なので、これがxev
表示されます。 Xで作業してキーリバインディングを使用する予定の場合は、xmodmap
無視しshowkeys
て内容を聞いてくださいxev
。
次のように出力でブロックを見つけたいと思いますxev
。
KeyPress event, serial 27, synthetic NO, window 0x1200001, root 0x101, subw 0x0, time 6417361, (340,373), root:(342,393), state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 27, synthetic NO, window 0x1200001, root 0x101, subw 0x0, time 6417474, (340,373), root:(342,393), state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False
xev
特にマウスを動かすと多くの出力が生成される傾向がある。目的の出力を見つけるには、しばらく後ろにスクロールする必要があります。前の出力でkeysym Alt_L
Xキーコードが関連付けられていることを確認しました64
。