装上sublime text3来格式化看一些jquery代码不要太方便,用来编辑文本的时候却意外发现不能输入中文,搜了一下搜出好多的答案,下面整理了一个可用的。
1.安装c++编译环境
程序是用c写的,需要自己编译,缺少编译环境自然是不行的。
sudo apt-get install build-essential
sudo apt-get install libgtk2.0-dev
2.编辑c文件
在~目录下新建一个名为sublime-imfix.c的文件,内容如下:
3.将文件编译成共享库libsublime-imfix.so
gcc -shared -o libsublime-imfix.so sublime-imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC
4.将编译号的文件拷贝到sublime text所在文件夹
sudo mv libsublime-imfix.so /opt/sublime_text/
5.修改文件/usr/bin/subl的内容
将
#!/bin/sh
exec /opt/sublime_text/sublime_text "$@"
修改为
#!/bin/sh
LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text "$@"
这样在命令中执行subl打开的sublime text3就可以输入中文了
6.桌面运行及右键运行
为了使用鼠标右键打开文件时能够使用中文输入,还需要修改文件sublime_text.desktop的内容,
命令
sudo vi /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"
完美结束,不管是subl中还是桌面和鼠标右键打开的sublime text3都可以输入中文了。