- 645 名前:login:Penguin mailto:sage [2008/10/05(日) 15:41:40 ID:EGuRjeo8]
- PS/2 と USB にそれぞれ US配列のキーボードを差しておきます。
ここで両者の発行するコードを比較します。たとえば右ALT。 コンソールでは、両者のスキャンコードは同一です。(従ってキーコードも同じ) ところがX上では右ALTのキーコードが PS/2 が 108 USB が 113 と違っています。XKBのキーコードの定義を見ると、 Alt_R = 108 は /usr/share/X11/xkb/keycodes/evdev に記述があり Alt_R = 113 は /usr/share/X11/xkb/keycodes/xfree86 に記述があります。 なお 113 は PS/2 の方では Left arrow キーのキーコードになっています。 さてこの状態で Alt_R を Super_R として利用したいものとします。 xmodmap -e 'keysym Alt_R = Super_R' とすると PS/2 の方だけ反映され、USBの方は Alt_R のままです。そこで xmodmap -e 'keycode 113 = Super_R' と直接コード指定すると USBの方も Super_R になってくれますが、今度は PS/2 で 113 をコードにもつ Left arrow キーまで Super_R になってしまいます。 どうすればよいでしょうか。
|

|