LeopardのX11.appでかんなとkinput2を使う

MacOS X 10.5 LeopardのX11.appで日本語を入力する方法を検討します。 今風にはAnthy+UIMとかなんでしょうけど、使い慣れたものの方がよい。

インストール

finkが設定されているとして、

% fink install canna kinput2

で必要なものは入るはず。追加の辞書等は かんなの公式ページに掲載されている。

次に起動時にかんなが起動するようにする。

% sudo daemonic enable canna

で良い(と思う)。かんなのサーバーが起動しているかどうかはcannastatコマンドで 確認できる。

X11の設定

ここまでの段階でemacsとycを使った入力はできるようになっているが、 X11で動くアプリケーションで日本語を入力できるようにするにはもう少し設定が必要。

環境変数を設定する

X11.appが.xinitrcを動かすタイミングの問題なのか、.xinitrc で設定する環境変数が反映されないので、次の方法でXMODIFIERS変数を設定する。

  1. Property List Editor.app(/Developer/Applications/Utilities/の中にある)を使って、 XMODIFIERSと@im=kinput2というペアを含むファイルを作り、それをenvironment.plistとして保存する。 environment.plist
  2. その後、environment.plistを~/.MacOSX/の中に入れる。

この方法の意味は、 Appleの公式な説明 の`User Session Environment Variables'の部分に記載されています。ちょっと古いですが、 親切な説明がここにもあります。

.xinitrcを設定する

この部分がミソです。kinput2のデフォルトのリソースが標準では読まれないので、これを読むように する必要があります。

.xinitrcを以下のようにします:

xrdb -merge ~/.Xdefaults
xrdb -merge /sw/etc/app-defaults/Kinput2
/sw/bin/kinput2 -canna -xim -kinput &
quartz-wm

自分の.Xdefaultsがないのなら1行目は要りません。二行目でkinput2のデフォルトのリソースを読みます。 3行目でkinput2を起動します。4行目でウインドウマネージャを起動します。

以上の方法でX11上のsylpheedで日本語が入力できるようになりました。 うまくいかなかったら教えてください。