キー配列をカスタマイズする

キー配列をいじった時のメモ

CapsLockとCtrlを入れ替えるといったキーカスタマイズはメニューから行うことが出来るが、
「無変換をBackSpaceに 変換をReturnに」
といったあまりにも独特な変更はしてくれない。


ネットで調べてみると、
/usr/share/xmodmap以下の
xmodmap.*と言うファイルにキー配列の設定が書いてあるらしい。日本語ならば、xmodmap.jp。
keycode 22 = BackSpace
などとずらーっと書き込んである。


まずは、キーとkeycodeの対応を調べないといけない。
それには、xevというコマンドを使う。


調べ終わったら、
$sudo vi /usr/share/xmodmap/xmodmap.jp 
でviを起動して対応する箇所を修正。


# ちなみに、変換キーはkeycode 100 無変換キーは102 だった。


$xmodmap /usr/share/xmodmap/xmodmap.jp
でキーマップを再読み込みさせてみたところ、
手動で変更した箇所はうまくいったが、カーソルキーが使えなくなるなどの不具合が出た。
どうやらデフォルトのキーマップは別にあり、xmodmap.jpで変に上書きされてしまう模様。


それならばと、xmodmap.myという新規ファイルに
keycode 100 = Return
keycode 102 = BackSpace
とだけ書き込んで
$xmodmap /usr/share/xmodmap/xmodmap.my
とすることにした。


これを
システム→設定→セッション から自動起動するプログラムに登録した。


これで、使い慣れたキーバインディングの環境を構築することが出来た。
Ubuntu 8.10にて


追記
xmodmapという名称からも分かるように、XWindow上でのみこの設定は有効である。