トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

Linux:SublimeTextで日本語入力できるようにする のバックアップ差分(No.3)


  • 追加された行はこの色です。
  • 削除された行はこの色です。
*Linux:SublimeTextで日本語入力できるようにする [#t94e80e0]

LinuxでSublimeTextで日本語入力をできるようにするためには、以下のコマンド2発です。
インストール方法は以下の2種類
-sublimeのPackageControllerからインストール
-ソースを直接インストール

PackageControllerについては割愛。

ソースから直でインストールする方法としては、以下のコマンド2発です。

これで、InputHelperというプラグインがインストールされます。

 cd ~/.config/sublime-text-2/Packages
 git clone https://github.com/xgenvn/InputHelper.git

して、Sublime起動して、「Ctrl+Shift+Z」を押すと入力用ダイアログが表示されて、iBusで日本語入力が出きるようになります。

入力が完了したら「Ctrl+Enter」で日本語が入ります。

、、、

が、CentOSだと動きません。

原因は
-InputHelperが要求するpygtkのバージョンが2.20以降
-InputHelperが要求するpygtkのバージョンが2.22以降
-CentOS6系でインストール可能なpygtkのバージョンは2.18
ということです。

具体的には、このプラグインが使っている実装で、gtk.Entry.get_bufferメソッドを使用してますが、これがpygtk2.22以降に提供されているメソッドだからです。

-https://developer.gnome.org/pygtk/2.24/class-gtkentry.html#method-gtkentry--get-buffer

最初は、CentOSに入っているpygtkを新しくしようと思っていろいろ調べていましたが、ソースいじったほうが早そうだったので、以下にパッチを載せます。

***動かすためのパッチ [#n445f422]
Sublimeのパッケージは以下のディレクトリに格納されます。

-/.config/sublime-text-2/Packages

この中の「InputHelper/lib」ディレクトリに入っている以下のファイルがパッチ対象です。

-linux_text_input_gui.py

***参考URL [#sf42bd7f]
まあ、ここに書いてあるとおりですなw
-https://github.com/xgenvn/InputHelper
このファイルの18行目から始まるprint_textメソッドがパッチ対象です。

-http://d.hatena.ne.jp/dai_yamashita/20121004/1349354987
パッチの内容は
-19行目、20行目をコメントアウト
-21行目に「print self.textInput.get_text();」を追加

パッチ適用後のprint_textメソッドの内容を以下に記載します。

     def print_text(self):
 #        buffer = self.textInput.get_buffer()
 #        print buffer.get_text()
         print self.textInput.get_text()

これで、動くようになるはずです。