http://www.linuxidc.com/Linux/2017-01/139237.htm
http://www.jianshu.com/p/bf05fb3a4709
http://jingyan.baidu.com/article/f3ad7d0ff8731609c3345b3b.html
按照上述文章解决思路正确操作上存在问题
我是这么做的:
- 下载Sublime是一个.tar.bz2
- 解压到自己喜欢的目录
摘录:
保存下面的代码到文件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
然后将libsublime-imfix.so拷贝到sublime_text所在文件夹
sudo mv libsublime-imfix.so /马赛克马赛克/sublime_text_3 //移动到自己的目录就好
创建/修改 执行文件
#!/bin/sh exec /opt/sublime_text/sublime_text "$@" //修改为 #!/bin/sh LD_PRELOAD=/马赛克马赛克/sublime_text_3/libsublime-imfix.so exec /马赛克马赛克/sublime_text_3/sublime_text "$@" //注意如果subl文件不存在,则自行创建,创建完成后将上述要修改成的代码复制粘贴进去即可,然后进入 /usr/bin 目录下赋予 subl 文件可执行的权限 sudo chmod +x subl //最后执行 马赛克:/usr/bin$ ./subl
桌面启动那个文件我没有做修改。
- rm sublime_imfix.c //删除该文件
- 现在的问题是只有
马赛克:/usr/bin$ ./subl
才能启动可编辑中文的 Sublime 没准把别人博客中的后续内容做完可以解决