Ubuntu 14.04下安装sublime后,不能输入中文,而在其他软件中能正常输入,这是sublime的bug,解决方案是在通过shell在每次运行sublime前自动添加一个动态修正库,解决过程如下:
进入某个目录如~:
cd
新建一个C源代码
subl 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); }
在能编译之前可能需要安装依赖包,通过以下命令完成:
sudo apt-get install build-essential sudo apt-get install libgtk2.0-dev
然后编译C文件:
gcc -shared -o libsublime-imfix.so sublime-imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC
接下来在每次运行sublime程序之前告诉程序链接上这个.so库文件即可在sublime中输入中文,其命令是LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text “$@”,其中/opt/sublime_text/是sublime安装的默认目录。命令行的subl还是Dash的Sublime Text,或是文件浏览器里的open with> sublime text,他们都能启动sublime程序,但不必寻找他们的启动入口,而后一一改之。他们都依赖于执行/opt/sublime_text/sublime_text,利用此特点,将/opt/sublime_text/sublime_text二进制另存,之后写个名为/opt/sublime_text/sublime_text的shell脚本,其中实现在执行新建此shell脚本以前的/opt/sublime_text/sublime_text二进制之前,告诉程序链接.so修正库文件。过程如下:
cd /opt/sublime_text/ sudo mv sublime_text sublime_text0 sudo vim sublime_text # 不熟悉vim者亦可sudo gedit sublime_text
在一行内写入以下语句后保存:
LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text0 “$@”
sudo chmod +x sublime_text
至此应该可以在sublime中输入中文了。
更多Sublime Text相关资讯阅读读:
开发者最常用的 8 款 Sublime Text 3 插件 http://www.linuxidc.com/Linux/2016-02/128719.htm
Ubuntu 安装代码编辑器 Sublime Text 3 (Build 3083) http://www.linuxidc.com/Linux/2015-03/115534.htm
动图展示16个Sublime Text快捷键用法 http://www.linuxidc.com/Linux/2014-12/110930.htm
Ubuntu 12.10 安装破解Sublime Text 2 http://www.linuxidc.com/Linux/2013-07/86898.htm
Ubuntu 13.04安装Sublime Text 2 http://www.linuxidc.com/Linux/2013-05/84228.htm
编码神器——Sublime Text 包管理工具及扩展大全 http://www.linuxidc.com/Linux/2013-10/91701.htm
如何开发 Sublime Text 2 的插件 http://www.linuxidc.com/Linux/2013-09/90046.htm
Windows Mac Linux下安装以及破解Sublime Text 2编辑器 http://www.linuxidc.com/Linux/2013-08/89452.htm
文本编辑器Sublime Text 使用体验 http://www.linuxidc.com/Linux/2013-08/89326.htm
Sublime Text 的详细介绍:请点这里
Sublime Text 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-07/133382.htm