参考site: https://github.com/YoungZHU/sublime-imfix

1. 下载sublime-imfix.c
   假设下载到了 home(~)目录下

2. 安装c\C++编译环境和gtk libgtk2.0-dev
  终端下输入以下命令:
       $ sudo apt-get install build-essential libgtk2.0-dev

3. 编译共享库

  终端下输入以下命令:
  $ gcc -shared -o libsublime-imfix.so sublime-imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC

  注: 该命令需要在sublime-infix.c 所在目录执行

4.  将编译好的库移到 sublime 的安装目录(如: /opt/sublime_text/)

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

5. 启动sublime

  进入sublime安装目录,执行以下命令启动

  $ cd /opt/sullime_text/

  $ LD_PRELOAD=./libsublime-imfix.so ./sublime_text

  到此可以在sublime中输入中文了

  

6. 每次像第5步那样启动太麻烦,接下来配置桌面快捷启动方式

  编辑修改sublime_text.desktop

  $ vim /usr/share/applications/sublime_text.desktop

  (a). 将[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"

  (b).将[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"

  (c).将[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"

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

    

7.  修改shell脚本

   $ vim /usr/bin/subl

  修改命令如下:

  

  

解决Ubuntu下sublime3无法输入中文的更多相关文章

  1. ZT 解决Ubuntu下SublimeText3不能输入中文问题

    git clone https://github.com/lyfeyaj/sublime-text-imfix.git运行脚本 :cd sublime-text-imfix && ./ ...

  2. 搜狗输入法在Ubuntu下突然不能输入中文

    使用搜狗输入法在Ubuntu下突然不能输入中文,这种情况出现多次,先找到一个快捷的解决方案: 首先要知道遇到这种情况的很大可能原因是bin目录里文件过多,系统加载不完全,你就算上面的脚本执行3次都不行 ...

  3. Ubuntu 下 Sublime 无法输入中文?(已解决)

    在 Ubuntu 里安装了 Sublime 却不能输入中文? 这可不好. 怎么办呢? Follow Me! 1 获得 sublime-imfix.c 文件 有 GitHub 账号的,可以从 https ...

  4. ubuntu下phpstorm无法输入中文的解决办法

    http://blog.csdn.net/woshiliulei0/article/details/51657356 今天期待已久的搜狗输入法linux版上线了,对于我们这种之前用习惯了搜狗输入法的屌 ...

  5. centos和ubuntu下pycharm无法输入中文的解决办法

    编辑启动的脚本文件 vim /usr/bin/pycharm ubuntu下添加 export GTK_IM_MODULE=fcitx export QT_IM_MODULE=fcitx export ...

  6. 转:Ubuntu下用Sublime输入中文

    最近用上ubuntu跑theano,碰到的一个问题就是用sublime编辑代码的时候无法输入中文. 读代码经常要写注释不能用中文是在是麻烦. 曾经考虑过使用别的文本编辑器,但是sublime的用户界面 ...

  7. 解决Ubuntu下Chrome浏览器网页中文字体混乱

    在Ubuntu下使用Chrome浏览器时碰到了网页中文字体混乱的现象: 黑体和楷体混杂,看起来非常不美观. 这是由于许多网页并没有指定字体,然后浏览器将调用系统默认字体配置. 首先,安装文泉驿字体: ...

  8. Ubuntu下搜狗输入法无法输入中文

    现象:无法打出中文,但是有输入框.如下图所示情形: 解决方法 删除配置文件,重启fcitx 配置文件在~/.config下的3个文件夹里SogouPY.SogouPY.users.sogou-qimp ...

  9. linux下QtCreator无法输入中文的情况

    解决linux下QtCreator无法输入中文的情况 本文由乌合之众 lym瞎编,欢迎转载 blog.cnblogs.net/oloroso 本文由乌合之众 lym瞎编,欢迎转载 my.oschina ...

随机推荐

  1. 暑假集训(1)第四弹 -----Find a way(Hdu2612)

    Description Pass a year learning in Hangzhou, yifenfei arrival hometown Ningbo at finally. Leave Nin ...

  2. Entity SQL 初入

    Entity SQL 是 ADO.NET 实体框架 提供的 SQL 类语言,用于支持 实体数据模型 (EDM).Entity SQL 可用于对象查询和使用 EntityClient 提供程序执行的查询 ...

  3. C#使用Json

    AJAX传递复杂数据如果自己进行格式定义的话会经历组装.解析的过程,因此AJAX中有一个事实上的数据传输标准JSon. Json将复杂对象序列化为一个字符串,在浏览器端再将字符串反序列化为JavaSc ...

  4. C# DES

    using System; //这个是使用DES的基础 using System.Security.Cryptography; //这个是处理文字编码的前提 using System.Text; // ...

  5. 禁止选择文本和禁用右键 v3.0

    禁止选中字体(注:在火狐浏览器没有起到效果作用) <script> function disableselect(e) { var omitformtags = ["input& ...

  6. C#winform程序安装时自动卸载新版本覆盖旧版本

    vs2005为winform程序做的安装包.在以有程序旧版本的机子上用新版本的安装包安装软件时提示  “以经安装该产品的另一个版本.无法继续安装此版本........” 在安装部署项目中设“Remov ...

  7. 在后台代码中引入XAML的方法

    本文将介绍三种方法用于在后台代码中动态加载XAML,其中有两种方法是加载已存在的XAML文件,一种方法是将包含XAML代码的字符串转换为WPF的对象. 一.在资源字典中载入项目内嵌资源中的XAML文件 ...

  8. 【C语言】37个关键字

    C语言37个关键字 一.相关基础知识 年. 关键字:是由系统定义的,不能重新做其他定义的字符,且每个关键字已经赋予了不同的意义,让编程者能够使用来告诉编译器完成不同的工作PS:C语言严格区分大小写,i ...

  9. android alipay(移动支付,异步通知发起失败,但是支付成功)

    问题1:移动支付 demo测试,支付成功,但是异步通知没发起,help notify_url 需要服务器地址,不是本地网址 问题2:这回 支付成功了.也返回到return_url了.但是页面显示验证失 ...

  10. android 布局权重问题(转载)

    //权重和父容器orientation有关 horizontal 指水平方向权重  android:layout_width vertical  指垂直方向权重   android:layout_he ...