linux下sublime text的中文输入问题

晚上经过参照网上的解决方法,实践了一下,解决了sublime 在linux下的中文输入问题


1:切换到~目录,
然后新建一个sublime_imfix.c的文件

touch sublime_imfix.c

     

2:编辑sublime_imfix.c文件  

gedit sublime_imfix.c

将下面的代码复制到打开的gedit中

#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);
}

3:将复制好的代码文件sublime_imfix.c编译成libsublime-imfix.so文件

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

到这一步可能会一个有一个错误说什么“gtk/gtkimcontext.h: 没有那个文件或目录”

这时你新开一个终端执行apt-get install libgtk2.0-dev


4:接下来再次执行

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

5:然后将编译的libsublime-imfix.so文件拷贝到sublime_text所在文件夹

sudo mv libsublime-imfix.so /opt/sublime_text/

6:修改文件/usr/bin/subl的内容

sudo gedit /usr/bin/subl

#!/bin/sh

    exec /opt/sublime_text/sublime_text "[email protected]"

替换为

#!/bin/sh

LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text "[email protected]"

7::还需要修改文件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 Action Window]中的字符串

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 Action Document]中的字符串

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"


8:最后,最后,最好 ,打开sublime,切换到中文输入,try


10:shutdown -h now

         睡觉,睡觉,睡觉

时间: 2024-10-26 23:19:01

linux下sublime text的中文输入问题的相关文章

完美解决Ubuntu下Sublime Text 2中文输入(Fcitx)

sudo apt-get install build-essential libgtk2.0-dev gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC sublime_text.sh #!/bin/bash sh -c "LD_PRELOAD=/home/eechen/apps/sublime_text_2/libsublime-imfix.so /home

完美解决 Linux 下 Sublime Text 中文输入

首先,我参考了好几篇文章,都是蛮不错的,先列出来: sublime-text-imfix:首先推荐这个方法,最简单,但是在我的系统上有些问题.可用这个的强烈推荐用这个 完美解决 Linux 下 Sublime Text 中文输入:讲的比较明白,也可用参考. Ubuntu下Sublime Text 3解决无法输入中文的方法: 讲解的最清楚了,建议看看. 测试系统:Ubuntu 14.04 (理论上所有 Linux 发行版都通用) 输入法:Fcitx 4.2.6.1 Sublime Text 版本:

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

前言 sublime很好用,但是ubuntu下不能输入中文,这是一个很大的问题.不知道为什么开发着一直也不解决,好在还是有高手在,总能找到方法.网上方法很多,但是也很乱,现在我将自己的经验总结一下. 首先,我参考了好几篇文章,都是蛮不错的,先列出来: sublime-text-imfix:首先推荐这个方法,最简单,但是在我的系统上有些问题.可用这个的强烈推荐用这个 完美解决 Linux 下 Sublime Text 中文输入:讲的比较明白,也可用参考. Ubuntu下Sublime Text 3

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

前言 sublime非常好用,可是ubuntu下不能输入中文,这是一个非常大的问题.不知道为什么开发着一直也不解决,好在还是有高手在.总能找到方法. 网上方法非常多,可是也非常乱,如今我将自己的经验总结一下. 首先,我參考了好几篇文章.都是蛮不错的.先列出来: sublime-text-imfix:首先推荐这种方法.最简单.可是在我的系统上有些问题. 可用这个的强烈推荐用这个 完美解决 Linux 下 Sublime Text 中文输入:讲的比較明确.也可用參考. Ubuntu下Sublime

Linux 下 Sublime Text 添加 InputHelper 插件输入中文

Linux 下的 Sublime Text 不支持中文输入,我也是醉了. 网上找了一些方法,都没有成功,最后就用 InputHelper 折中一下了,虽然麻烦,但好歹能写中文了. InputHelper 因为是以弹出个窗口方式输入,所以理论上支持系统所使用的所有中文输入法. 安装方法: $ cd ~/.config/sublime-text-3/Packages $ git clone https://github.com/xgenvn/InputHelper.git 或者 去下载 InputH

完美解决 Linux 下 Sublime Text 中文输入(转载)

1.保存下面的代码为sublime_imfix.c /* sublime-imfix.c Use LD_PRELOAD to interpose some function to fix sublime input method support for linux. By Cjacker Huang <jianzhong.huang at i-soft.com.cn> gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config

Ubuntu菜鸟入门(十八)————解决Ubuntu下Sublime Text 3无法输入中文

一.下载我们需要的文件,打开终端,输入: git clone https://github.com/lyfeyaj/sublime-text-imfix.git 二.将subl移动到/usr/bin/,并且将sublime-imfix.so移动到/opt/sublime_text/(sublime的安装目录) cd ~/sublime-text-imfix sudo cp ./lib/libsublime-imfix.so /opt/sublime_text/ sudo cp ./src/sub

linux下sublime text 3安装到配置

1. Sublime Text 3的下载安装 到官方网站上http://www.sublimetext.com/3下载64位(系统位64位)的.deb安装包(http://c758482.r82.cf2.rackcdn.com/sublime-text_build-3059_amd64.deb),下载后双击安装即可.安装好之后,通过命令subl即可打开程序,此时已经可以编写代码了. 2.安装好软件之后,最好安装package control 方法如下:使用Ctrl+`快捷键或者通过View->S

解决 ubuntu 14.04.1 下sublime text3 3065 中文输入问题

今天看 sublime text3 已经不是之前的3059 的了  已经支持3065了. 所以为了支持subl  实现中文输入法 ,下面把我的操作流程记录下来供大家使用 这里有完整的教程:  http://www.360doc.com/content/14/0329/08/13087748_364608018.shtml# 但是需要把里面的 sublime_imfix.c文件换成下面这个,亲自使用过了没问题 /* sublime-imfix.c Use LD_PRELOAD to interpo