転載:Ubuntu 14.04インストールSublime Text 3--解決検索犬中国語入力方式を使用できない


テキストアドレス
言うまでもなく、Sublime Textは最も開発者に人気のあるエディタの一つで、清新なインタフェースと強力なプラグインを持っていますよ~以下の小指は簡単にUbuntuの下でSublime Text 3をインストールする過程を紹介します:まず公式サイトでUbuntuのインストールパッケージをダウンロードします:ダウンロードしてからコマンドsudo dpkg-ivhインストールパッケージでインストールします面倒だと思ったら、次のコマンドを直接コピーして最新バージョン3083をインストールしましょう:For Ubuntu 32ビット:cd /tmpwget http://c758482.r82.cf2.rackcdn.com/sublime-text_build-3083_i386.debsudo dpkg -i sublime-text_build-3083_i 386.deb For Ubuntu 64ビット:cd /tmpwget http://c758482.r82.cf2.rackcdn.com/sublime-text_build-3083_amd64.debsudo dpkg -i sublime-text_build-3083_amd 64.deb注意:実際のインストールパスは /opt/sublime_text/インストールが完了すると、Sublimeで中国語を入力できないことがわかりました.小指で使用する入力法は、検索For Linux入力法の解決策です.次のコードをファイルに保存します. sublime_imfix.c ,コマンド:cd~&&gedit sublime_imfix.cコード:
#include <gtk/gtkimcontext.h>
void gtk_im_context_set_client_window (GtkIMContext *context,
         GdkWindow    *window)
{
 GtkIMContextClass *klass;
 g_return_if_fail (GTK_IS_IM_CONTEXT (context));
 klass = GTK_IM_CONTEXT_GET_CLASS (context);
 if (klass->set_client_window)
   klass->set_client_window (context, window);
 g_object_set_data(G_OBJECT(context),"window",window);
 if(!GDK_IS_WINDOW (window))
   return;
 int width = gdk_window_get_width(window);
 int height = gdk_window_get_height(window);
 if(width != 0 && height !=0)
   gtk_im_context_focus_in(context);
}

コピー保存可~
前のコードを共有ライブラリにコンパイル libsulime-imfix.so ,コマンド:
cd ~
gcc -shared -o libsublime-imfix.so sublime_imfix.c  `pkg-config --libs --cflags gtk+-2.0-fPIC

一部の子供靴はコンパイルできず、エラーが発生しました.
No package 'gtk+-2.0' foundsublime_imfix.c:1:30: fatal error: gtk/gtkimcontext.h:          
 #include <gtk/gtkimcontext.h>

必要な依存関係をインストールする必要があります.
sudo apt-get install libgtk 2.0-devインストールが完了したら再コンパイル、いいでしょう~
そして libsublime-imfix.so コピー先 sublime_text フォルダ、コマンド:
cd ~
sudo mv libsublime-imfix.so /opt/sublime_text/

Sublimeのコマンドの変更 /usr/bin/subl を選択します.
sudo gedit /usr/bin/subl

ファイルの内容:
#!/bin/shexec /opt/sublime_text/sublime_text "$@"

置換:
#!/bin/shLD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text "$@"

完了後、コマンドラインでsubl再起動Sublimeを実行すると、捜犬For Linuxの中国語入力方式が使用できます~
グラフィックインタフェースのショートカットを続行 sublime_text.desktop の変更:
sudo gedit /usr/share/applications/sublime_text.desktop

[Desktop Entry]フィールドの文字列を次のようにします.
Exec=/opt/sublime_text/sublime_text %F

置換:
Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text %F"

[Desktop ActionWindow]フィールドの文字列を次のようにします.
Exec=/opt/sublime_text/sublime_text -n

置換:
Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text -n"

[Desktop ActionDocument]フィールドの文字列を次のようにします.
Exec=/opt/sublime_text/sublime_text --command new_file

置換:
Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text --command new_file"

注意:二重引用符「」を修正してください.そうしないと、スペースファイル名の付いたファイルを開けられなくなります.置き換えが完了したら、Sublime Textを再起動すれば、捜犬For Linux入力方式で中国語を入力できます~