wimeを使ってLinuxでWindows版ATOK 2008を動作させる
Windows版のATOK2008をwineで動作させcannaサーバに見せかけるプログラム、wimeをインストールして使えるよう設定します。
kokutotoは去年の9月くらいから使っていますが安定していて十分常用できますし、やはり連文節変換でATOKの精度は侮りがたいものがあります。
Linuxで文章を書くがAnthyはちょっと…でもWindows版があるしATOK X3は買いたくない、といった場合に重宝します。
以下の作業はdebian lennyを前提としていますが、ubuntuなどはほとんど変わらない手順で導入できるのではと思います(試していないのでわかりません)。
wineのインストール
まずwineをインストールします。
wimeはwine 1.0.0でも動作するのでdebian lennyならaptからインストールするだけで良いです。
apt-get install wine
ATOKのインストール
ATOK2008製品版のCD-ROMのATOK/ATOK21.msiをmsiexecで実行します。普通にexeを起動するだけではダメなようです。
文字化けするかも知れませんがwime自体は正常に動くのでフィーリングでインストールを進めます。
msiexec /i /mnt/ATOK/ATOK21.msi
不足しているレジストリを補うためwimeを展開した中に入っているatok.regをregeditで読ませます。
regedit atok.reg
wimeのインストール
作業の一連の流れとReadmeを読んでも書いていない事を中心に書きます。
ダウンロード
公式サイトから最新のwimeのアーカイブ(ここでは3.1.3)を落としてきます。
wget http://www.venus.sannet.ne.jp/thomas/wime/wime-3.1.3.tar.bz2
展開します。
tar jxvf wime-3.1.3.tar.bz2
ビルド
makeします。
debianではwine関係のファイルが/usr/libとか/usr/includeに入るのでWINEDIRは/usrにしておくのが良いでしょう。
WINEDIR=/usr make
RK.hが無いと言われたら…。
sudo apt-get install libcanna1g-dev
winuser.hが無いと言われたら…。
sudo apt-get install libwine-dev
gtk.hなどが無いと言われたら…。
sudo apt-get install libgtk2.0-dev
デフォルトで後述するwimeximとim-wimeもコンパイルされるよう設定されているので、これらが不要なら以下のように変数を設定しておくと依存ライブラリが減るかも知れません。
enable_xim=0 enable_gim=0
動作確認
インストール前に動作を確認することもできます。
Readmeにあるようにwimeをmakeしたディレクトリで次のようにするとwimeが動作します。
LD_LIBRARY_PATH=./so:$LD_LIBRARY_PATH WINEDLLPATH=./dll ./exe/wime
wimeの起動/設定/終了
起動はwimeコマンドから。
wime
もし本物のcannaサーバが動いていたら終了させておきます。
wimeを常用する場合はupdate-rc.dでcannaの自動起動設定を切っておきましょう。
sudo /etc/init.d/canna stop
wimeの設定はwimeの起動時にwimectrlで。
wimectrl
wimeの終了はwimectrl -kで。
wimectrl -k
異常終了時に「アドレスは既に使用中です」と言われて再起動できない場合があります。
ImInit: Address already in use
libcannaと通信するためのソケットが残っているのが原因なので、そういう場合は/tmp/.iroha_unix/IROHAを削除します。
rm /tmp/.iroha_unix/IROHA*
入力メソッド毎の設定
ここから先はお好みで。
uim + uim-cannaでの設定例
kokutotoはATOK以外ならuim + anthyな人なのでuim-cannaを使ってuimでwimeを使うように設定します。
sudo apt-get install uim-canna
これでuimの設定でインプットメソッドとしてcannaが指定できるようになります。
uim-pref-gtkで「使用可能にする入力方式」を"Canna"にします。
uim-pref-gtk
wimexim及びim-wime
wimeには2.0.0からXIMサーバのwimeximが、3.0.0からGTK+用immoduleのim-wimeが付属しています。
ATOKパレットも出て素敵な感じになりますが、wineにパッチを当てないとファンクションキーが効かないなど不便な所があります。
debianだとこれらに関係する環境変数XMODIFIERSやGTK_IM_MODULEの設定は~/.xinput.d以下のファイルで行います。
またリソース設定は~/.Xresourcesに書くことにします。~/.Xresourcesはどこかでxrdbで読まれると設定されている前提です。
wimexim
~/.xinput.d/ja_JPで以下を設定をします。
このファイルはデフォルトで/etc下にあるファイルを指すシンボリックリンクなので注意が必要です。
XIM=wime XIM_PROGRAM=/usr/local/bin/wimexim
続いてIMEをon/offするためのキーバインドをリソースで設定します。~/.Xresourcesに以下を書きます。
ximegim.imeToggleKey:A-space
または
Wime.imeToggleKey:A-space
wimeximを起動しておきます。
wimexim
これでXIM対応アプリケーションから、リソースimeToggleKeyで設定したキーバインドでIMEがon/offされ、ATOKが利用可能になります。
im-wime
同じく~/.xinput.d/ja_JPに以下を設定します。
GTK_IM_MODULE=wime
次に~/.Xresourcesに以下を設定します。
wimegim.imeToggleKey:A-space
または
Wime.imeToggleKey:A-space