Ubuntu下Sublime Text 3解决无法输入中文

1. SublimeText 3的安装
    到官网下载最新版sublime test 3 linux版本,下载地址:
http://www.sublimetext.com/3下载后双击即会自动使用默认的安装软件安装。

2. 相关依赖软件的安装

    sudo apt-get install build-essential libgtk2.0-dev

保存下面的代码到文件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);
 }

将在终端上一步的代码编译成共享库libsublime-imfix.so,命令

cd ~
gcc -shared -o libsublime-imfix.so sublime_imfix.c  `pkg-config --libs --cflags gtk+-2.0` -fPIC

4. 中文输入

    在终端中输入如下命令可以打开sublime text 3,并可以通过组合键Ctrl+空格键切换中文输入:

 LD_PRELOAD=./libsublime-imfix.so subl

5. 为了方便
    在第4步中如果每次都输入LD_PRELOAD这样显得太不方便了,在这里提供简单修改图标连接的方式,快速打开SublimeText。将libsublime-imfix.so拷贝到系统库的默认路径中:

    sudo cp libsublime-imfix.so /usr/lib/

    修改/usr/share/applications/sublime_text.desktop文件
    sudo vim /usr/share/applications/sublime_text.desktop
    打开后将Exec=/opt/sublime_text/sublime_text %F修改为
    Exec=bash -c 'LD_PRELOAD=/usr/lib/libsublime-imfix.so /opt/sublime_text/sublime_text' %F

   将Exec=/opt/sublime_text/sublime_text -n修改为
    Exec=bash -c 'LD_PRELOAD=/usr/lib/libsublime-imfix.so /opt/sublime_text/sublime_text' -n

点击图标右键打开方式选择SublimeText 3就可以支持中文输入。

你可能感兴趣的:(Ubuntu下Sublime Text 3解决无法输入中文)