2014年3月9日日曜日

Ubuntu版SublimeText2(とSublimeText3)で日本語入力

Ubuntu版SublimeText2で、諦めていた日本語入力ができるようになったので、その方法をメモしておきます。
これから紹介する方法は、日本語入力システムに fcitx を使っていることが前提になっています。おそらくibusだと下の方法は使えないと思いますのでご注意を。

では。まずは、sublime_imfix.cというファイルを入手します。sublime_imfix.cは、SublimeTextのフォーラムでcjackerさんが公開してくれていますのでコピって保存すると良いでしょう。これをコンパイルします。
gcc -shared -o libsublime-imfix.so sublime_imfix.c  `pkg-config --libs --cflags gtk+-2.0` -fPIC

途中でコンパイルエラーが発生する場合はライブラリが足りていない可能性があります。下記のように必要ライブラリをインストールして再コンパイルしましょう。
$ sudo apt-get install build-essential libgtk2.0-dev

コンパイルが成功すると、libsublime-imfix.soというsoファイルができますので、それを適所にコピーします。
sudo cp libsublime-imfix.so /opt/sublime_text_2/

最後に /usr/bin/subl を編集して、SublimeText2の起動時に先ほどのsoファイルを読み込む設定を仕込みましょう。
#!/bin/bash
export LD_PRELOAD=/opt/sublime_text_2/libsublime-imfix.so 
/opt/sublime_text_2/sublime_text --class=sublime-text-2 "$@"
2行目の export LD_PRELOAD...の行が追加された箇所です。




入力中の文字が見えないという(変換候補のみ表示される)、ちょっと不完全なインライン入力ではありますが、使い勝手はかなりアップしました。

参考にさせていただいたサイト
Sublime Text をUbuntuで使ってみた。Fcitxで日本語入力を可能に(簡易対応)

追記:SublimeText3の場合

libsublime-imfix.so を /opt/sublime_text/ にコピーして
$ sudo cp libsublime-imfix.so /opt/sublime_text/
/usr/bin/subl を以下のとおりに編集すればOK。
#!/bin/bash
export LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so 
/opt/sublime_text/sublime_text "$@"

0 件のコメント:

コメントを投稿