近頃続々と、iPhone / iPod touchを対象とした"脱獄前提"のアプリケーションが発表されています。Skypeクライアントの「iSkype」とか、テレビ視聴アプリ「OrbLive」とか。新型機の噂もあるiPhoneですが、サードパーティーの動きも要注目ですね。
さて、今回は「第273回 6月まで待てない! あの「Wine」を試飲する」の続編。Windowsアプリ導入の基本ルールに触れつつ、なければ困る日本語入力環境の準備までを紹介してみよう。
Windowsアプリの導入
Windowsアプリは、Wineの実行対象に実行形式のファイルを指定することが原則。wine
コマンドの引数として、EXEファイルまたはインストーラを指定すればいいのだ。
Windows定番の画像ビューア「IrfanView」(日本語版はこちら)を例に説明してみよう。ダウンロードしたZIPファイルを展開、収録されている実行形式のファイル(i_view32.exe
)を引数に与えてwine
コマンドを実行するだけでいい。インストーラ付きのアプリケーションの場合、画面に従い作業すれば所定の領域(~/.wine/drive_c/Program Files
)以下にインストールされるので、以降はそのパスを指定すればOKだ。実際は、導入後にいろいろな問題(アプリごとに異なる)が出てくるのだが、今回は先を急ごう。
$ wine iview410j/i_view32.exe
実は鬼門? の日本語入力
OS XでWineを動かすとき、最大の難関となりうるのが「日本語入力」。X11とAquaでは、キーボードやマウスの入力経路が異なるため、X11に依存するWineの場合、ことえりやATOKといったIMEが使用できないからだ。この点が、商用アプリとして独自機能が追加されたCrossOver Mac(kinput2なしで日本語入力できる)との大きな違いといえる。
現状における対策は、AnthyなどX11で動作するIMEを導入するか、X11環境下でAqua用IMEの使用を可能にするプログラム(詳細はこちら)を導入するかの2つ。今回は、扱いが容易な後者をチョイスしてみよう。
その「ことえり on X11 for Mac OS X」に必要なファイルのダウンロード、およびインストールの手順は、以下に示すとおり。一時作業用ディレクトリを用意し、そこをカレントディレクトリとした状態から作業してほしい(といってもコピー&ペーストでOKだが)。動作環境はOS X 10.5(Leopard)のみ想定しているので、念のため。
$ curl -O ftp://ftp.sra.co.jp/pub/x11/kinput2/kinput2-v3.1.tar.gz
$ curl -O http://homepage1.nifty.com/daemon/MachTen/sonoda/kinput2.fix4.macim.0.2.patch.gz
$ curl -O http://www.sol.dti.ne.jp/~kikuyan/macosx/patches/kinput2-v3.1-macim-20050629.patch.gz
$ curl -O http://www.gtlib.gatech.edu/pub/macports/trunk/dports/x11/kinput2-macim/files/patch-kinput2.macim.diff
$ tar zxf kinput2-v3.1.tar.gz
$ cd kinput2-v3.1
$ gzcat ../kinput2.fix4.macim.0.2.patch.gz | sed -n -e '143,549p' -e '581,$p' | patch -p1
$ gzcat ../kinput2-v3.1-macim-20050629.patch.gz | patch -p0
$ patch -p1 < ../patch-kinput2.macim.diff
$ xmkmf -a
$ make
$ sudo make install install.man
$ sudo ln -s /usr/X11R6/bin/kinput2.macim /usr/X11R6/bin/kinput2
X11のリソースファイルも用意しておこう。以下のリストをテキストエディタにコピーし、ホームディレクトリに「.Xresources
」というファイル名(~/.Xresources
)で保存してほしい。
*inputMethod: kinput2_macim
kinput2_macim*OverTheSpotConversion*modeShell.borderWidth: 0
kinput2_macim*OverTheSpotConversion.useOverrideShellForMode: true
kinput2_macim*SeparateConversion.input: false
kinput2_macim*selectionShell.input: false
kinput2_macim*auxShell.input: false
準備は完了。X11を起動したあと次のコマンドラインを実行し、Wine付属のメモ帳(notepad)で日本語入力が可能なことを確認しよう。日本語入力のON / OFFは、ふだんと同じ[Command]+[SPACE]キー、変換も[SPACE]キーでOKだ。
$ export XMODIFIERS='@im=kinput2.macim'
$ /usr/X11R6/bin/kinput2.macim &
Wine付属の「メモ帳」で日本語入力(IMEには「ATOK 2007」を使用) |
今回紹介したLeopard使用時における「ことえり on X11 for Mac OS X」の導入だが、いくつか問題がある。
まず1つは、入力可能な文字数の問題。「マイコミジャーナル」のように、マルチバイト換算で8文字を超える文字列を入力した場合、「err:keyboard:X11DRV_ToUnicodeEx Buffer Overflow need 27!
」なるエラーメッセージが出力され、入力がキャンセルされるのだ(ちなみに「マイコミジャーナ」はOK)。GIMPなど他のXクライアントでこの問題は発生しないため、おそらくWineのコードに問題があるのだろうが、本稿執筆時点では対処方法を発見していない。
Wine以外のXクライアントでは、9文字以上の文字列もOKなのだが…… |
もう1つは、カーソル下に変換候補を表示する「インライン入力」ができないこと。デフォルトのリソースファイル(/usr/X11R6/lib/X11/app-defaults/Kinput2_macim
)を変更してもダメ、変換候補は常にウインドウの外に表示されてしまう。筆者の設定が至らないだけかもしれないので、解決策が見つかり次第紹介させていただこう。