linuxmint/ubuntu SublimeText 中文输入法

原创 2016年06月02日 12:40:38

1、依赖

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

2、

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

}

3、

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

cd ~

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


4、

然后将libsublime-imfix.so拷贝到sublime_text所在文件夹

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


5、

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

sudo gedit /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 将可以使用搜狗for linux的中文输入


6、

为了使用鼠标右键打开文件时能够使用中文输入,还需要修改文件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"

注意:

修改时请注意双引号"",否则会导致不能打开带有空格文件名的文件。

此处仅修改了/usr/share/applications/sublime-text.desktop,但可以正常使用了。

opt/sublime_text/目录下的sublime-text.desktop可以修改,也可不修改。


相关文章推荐

在Ubuntu 14.04中使SublimeText 3支持中文输入法

在Ubuntu 14.04中安装了SublimeText 3之后发现既然不支持输入中文,于是在网上搜罗一下,发现很多人遇到了同样的问题,但是解决办法大该就只有一个。下面根据自身的安装及解决办法总结如下...

点滴记录——在Ubuntu 14.04中使SublimeText 3支持中文输入法

帮了大忙的博客:http://blog.csdn.net/cywosp/article/details/32350899     在Ubuntu 14.04中安装了Sub...

点滴记录——在Ubuntu 14.04中使SublimeText 3支持中文输入法

Sublime Text 3是一个非常优秀的代码编辑器,通过相关插件配合使用将大大提高代码的编写速度,提高效率。本文是关于在Ubuntu 14.04中解决SublimeText 3不支持中文输入法问题...
  • cywosp
  • cywosp
  • 2014年06月19日 22:00
  • 38519

【转】LinuxMint新手教程3:fcitx输入法的安装与配置

大概新手人都曾纠结过LinuxMint下的输入法配置问题。其实这个问题也挺容易的。下面我就以安装ppa源中的sogou输入法为例来为大家讲解: 安装搜狗输入法大概用如下命令就能解决了: sudo ...

LinuxMint新手教程3:fcitx输入法的安装与配置

大概新手人都曾纠结过LinuxMint下的输入法配置问题。其实这个问题也挺容易的。下面我就以安装ppa源中的sogou输入法为例来为大家讲解: 安装搜狗输入法大概用如下命令就能解决了: s...

LinuxMint新手教程3:fcitx输入法的安装与配置

作者:谭枫888 转自:
  • whw8007
  • whw8007
  • 2014年09月09日 16:25
  • 582

Ubuntu下安装的SublimeText无法输入中文解决方案笔记

保存下面的代码到文件sublime_imfix.c(位于~目录) #include void gtk_im_context_set_client_window (GtkIMContext *con...

Ubuntu17.04 安装搜狗中文输入法

写在前面 经过几天的折腾,终于在新的电脑上配置好了Ubuntu系统。开始时候安装了Ubuntu16.04,可能是由于UEFI引导的问题台式机一直不能连上有线网。重装了有十几次一直解决不了这个问题。...

Ubuntu14.04启用中文输入法

之前安装好了Ubuntu14.04,但是一直用不上中文输入法,记得以前的U11的时候在“Input Method”打开面板后直接添加就行了,但是现在一打开就是提示语言安装包不全,需要安装,捣鼓了几次,...

ubuntu下中文输入法的安装--fcitx(可运行版)

转载:http://www.cnblogs.com/yuemengke/archive/2013/04/09/3010207.html 在自己电脑ssd上装了ubuntu系统以来 一直没有怎...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linuxmint/ubuntu SublimeText 中文输入法
举报原因:
原因补充:

(最多只允许输入30个字)