Ubuntu 8.04でアンダーバーが効かなくなった

Ubuntu 8.04 Hardy Heronにアップグレードしたらキーボードがおかしくなったので修正した。

  1. キーコードを調べる
  2. $ xev
  3. 3行目でkeycode判明
  4. ... keycode 211 ...
  5. xmodmapでkeycode一覧取得。keycode 123にお目当てのものを発見
  6. $ xmodmap -pke
    ...
    keycode 123 = backslash underscore
    ...
  7. keycodeを入れ替えるためのコマンドを書いたファイルをホームディレクトリに保存(~/.Xmodmap)。書き間違えるとログインできなくなるので注意!
  8. keycode 211 = backslash underscore
    keycode 123 = NoSymbol
    ! 全角/半角も設定
    keycode 49 = Zenkaku_Hankaku
    

  9. 再起動すると、Ubuntuがログイン時にこのファイルを読み込むかどうが訊いてくるのでOKする。
サラッと書いたけどLinux初心者にはキツかったぜ…。あーコマンド覚えなきゃ…

追記|2008-05-07

Compiz FusionでSuperキーが効かなかったので、キーボードの設定を調べてたら、/etc/X11/xorg.confを書き換えれば万事解決することがワカッタヨ!つまり昨日書いたことは意味ナシということですよ…こうやって一つずつ賢くなっていくんだろうね

Option  "XkbVariant"  "latin,"

を、日本語のキーボードの型式

Option  "XkbVariant"  "106,"

に書き換える!