初めてVine Linux 2.0 をインストールしたとき、日本語が入力できないので焦った。 なんのことはない、[Shift]+[Space]が日本語入力への切換えであることを知らなかっただけでした。 でも、なぜ[Shift]+[Space]が日本語入力への切換えなのでしょう。 Macでは[Appleキー]+[Space]がそうなっているのでそれに似せたのかもしれない。 Windowsでは[Alter]+[漢字]が普通。 ただし jp106と呼ばれる日本語キーボードの場合です。 多くのLinuxディストリビューションが[Shift]+[Space]を標準にしているのは[漢字]キーを持たないキーボードを考慮してのことでしょう。 しかし日本語キーボードを使っているとこの[漢字]キー(「半角/全角 漢字」 と表示されている)がせっかくあるのに、何も機能しないのは不自然です。 そこでこのキーを活かして日本語入力への切換えに使うよう設定します。
/etc/X11/xinit/Xmodmap を覗いてみると、いくつかのキーがここで再設定されています。[漢字]キーの設定がコメントアウトされていたので、これを生かしてやることで漢字キーが有効になります。 ただしXを使っているときに限られます。
/etc/X11/xinit/Xmodmapkeycode 22 = BackSpace keycode 49 = Kanji keycode 111 = Print keycode 113 = Alt_R keycode 120 = Katakana keycode 129 = Henkan keycode 131 = Muhenkan keycode 133 = backslash bar
/usr/X11R6/lib/X11/app-defaults/Kinput2 を覗くと
*ConversionStartKeys: \
Shift<Key>space \n\
Ctrl<Key>Kanji
となっていて、このままでも[Ctrl]+[漢字]で日本語入力への切り換えができます。Windowsと揃えて[Alt]+[漢字]が使えるようにするには
*ConversionStartKeys: \
Shift<Key>space \n\
Alt<Key>Kanji
と書き換えます。あるいは次のようにすれば[漢字]キー単独で切換えできます。([Alt]+[漢字]でもOK)
*ConversionStartKeys: \
Shift<Key>space \n\
<Key>Kanji
以上の変更後も[Shift]+[Space]は生きています。
cannaのキーバインドは /etc/default.canna と ~/.canna で定義されています。 /usr/lib/canna/sample にいろいろな見本があります。 これを /etc/default.canna あるいは ~/.canna にコピーしてやればキーバインドが変更されます。 ~/.canna だけへのコピーだと、このユーザーだけの設定となります。
Wnnなど他のFEPでのキーバインド変更の情報は他所を探してください。
Tcl/TkでのKinput2の起動は /usr/lib/tk8.0jp/kinput.tcl で定義されています。