2008-04-19

Xubuntu - キーボードの設定 - 2

ToDo 実行。

『Caps Lock』を『Ctrl』に、『半角/全角』を『Esc』にしたいわけです。で、ここでまた迷ってしまうんですが、/etc/X11/xorg.conf に記述するのと ~/.Xmodmap を用意して記述するのとどっちがポピュラーなんでしょう?

というわけで、Google さんに訊いてみる。
  • ubuntu ctrl capslock .xmodmap で検索 => 14,900 件ヒット
  • ubuntu ctrl capslock xorg.conf で検索 => 14,700 件ヒット
んー、かなり微妙な感じ。でもまあその 200 件の差を尊重して、~/.Xmodmap で設定することにしよう。

まず、Applications >> ターミナル でターミナルを起動。

$ xmodmap -pke | less

してそれぞれの keycode を調べると、

keycode 9 = Escape
keycode 37 = Control_L
keycode 49 = Zenkaku_Hankaku Kanji
keycode 66 = Eisu_toggle Caps_Lock

でした。

最初、お互いにキーを入れ替えようかな?とも思ったんだけど、脳内会議にて「『Caps Lock』と『半角/全角』って必要?いやー、いらないんじゃないの?」という結論になったので ~/.Xmodmap には、

!!! /home/kn40y4/.Xmodmap
keycode 49 = Escape
keycode 66 = Control_L
add control = Control_L

と書くことに。短いのでターミナルから、

$ cd ~
$ cat > .Xmodmap
(ファイルの中身を書く)
(Ctrl+c で終了)

としました。で、ちゃんとキーが変更されるかどうかの確認はターミナルで、

$ xmodmap ~/.Xmodmap

とタイプして、.Xmodmap を読み込ませると ....

.... はい、ちゃんとキーが変更されてます。これで Firefox で『新しいタブを開く / 閉じる』の時に小指がツりそうにならなくても良いですね。めでたし。

以上は こちら を参考にしました。


追記 - 2008-04-20

起動時に読み込ませるの忘れてました。

$ cat > ~/.xsession
#!/bin/sh
xmodmap $HOME/.Xmodmap
(Ctrl-c)

以上 ....

.... のはずなのに、再起動をかけると立ち上がらなくなってしまいました。なんで? ~/.xsession-errors を見ると

Starting SCIM as daemon ...
SCIM has been successfully launched.

が、最後のメッセージ。とりあえずフェイルセーフなセッション (kterm のみ) でログインして、rm ~/.xsession して再起動すると ....

.... 無事、起動しました。ってなんだこれ?.xsession の記述に問題があるとは思えないしなあ。

ということで、Google さんに訊いたところ こちら に行き当たりました。Bug なんだそうです。へえ。

結局、Applications >> 設定 >> 設定マネージャ の『Autostarted Apps』に、

xmodmap /home/kn40y4/.Xmodmap

を追加することで解決しました。うーん、ちょっと気持ち悪いなあ。

0 件のコメント: