1. 本经验目前在Ubuntu14.04环境下,已有搜狗输入法 for Linux和Sublime Text 3的情况下安装成功。

    END

解决方法步骤2

 
  1. 1

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

    }

  2. 2

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

    cd ~

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

  3. 3

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

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

  4. 4

    修改文件/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的中文输入

  5. 5

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

  6. 6

    经过以上步骤我们能在Sublime中输入中文了。

    http://jingyan.baidu.com/article/f3ad7d0ff8731609c3345b3b.html
     

sublime text 3 安装中文的更多相关文章

  1. 解决Ubuntu(Linux)平台下Sublime Text 3 安装中文输入支持库后 开启gnome-terminal报错的问题

    在Ubuntu下安装Sublim Text3后发现无法输入中文,按照此链接的方法解决后.然后用下列代码配置C++的编译系统: { "cmd":["g++",&q ...

  2. Sublime Text 3(中文)在Windows下的配置、安装、运行

    Sublime Text 3(中文)下载.安装.运行! 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 具体 ...

  3. Ubuntu安装Sublime Text并输入中文

    Sumblime Text3是一款传说中的神级代码编辑器,具有下面特点: 1.代码高亮,自己主动补全 2.各种插件扩展 3.外观简洁舒适 4.跨平台(Windows,Linux,OS X) 简而言之就 ...

  4. sublime Text 的安装、破解、汉化、使用

    Sublime Text 3安装与使用   本文是Sublime Text 全程指引 by Lucida (http://www.cnblogs.com/figure9/p/sublime-text- ...

  5. Sublime Text 3安装与使用

    本文是Sublime Text 全程指引 by Lucida (http://www.cnblogs.com/figure9/p/sublime-text-complete-guide.html)的笔 ...

  6. sublime Text 2 安装Sublime Package Control

    Sublime Text 2 安装 Sublime Package Control,通过 Sublime Package Control,安装.升级和卸载 Package. 安装 Package Co ...

  7. Sublime Text 3安装与使用 Package Control 插件安装

    原文地址:http://www.cnblogs.com/zhcncn/p/4113589.html 本文是Sublime Text 全程指引 by Lucida (http://www.cnblogs ...

  8. 【工具篇】Sublime Text 2 安装汉化破解、插件包安装教程详解

    Sublime Text概述: Sublime Text是一个代码编辑器,也是HTML和散文先进的文本编辑器. 漂亮的用户界面和非凡的功能,例如:迷你地图,多选择,Python插件,代码段等等. 完全 ...

  9. Sublime Text 3(中文)添加Lua编译环境

    Sublime Text 3(中文)添加Lua编译环境 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 没有 ...

随机推荐

  1. WPP

    WPP(Wavefront Parallel Processing) 上一行的第二个LCU处理完毕,即对当前行的第一个LCU的熵编码(CABAC)概率状态参数进行初始化,如图5所示.因此,只需要上一行 ...

  2. [ZETCODE]wxWidgets教程五:布局管理

    本教程原文链接:http://zetcode.com/gui/wxwidgets/layoutmanagement/ 翻译:瓶哥 日期:2013年12月4日星期三 邮箱:414236069@qq.co ...

  3. PHP向MySql中插入数据

    <!DOCTYPE html> <!-- To change this license header, choose License Headers in Project Prope ...

  4. java使用batik转换svg文件

    svg是一种矢量图片格式,用来保存高保真的图片.我们可以用编辑器打开svg,我们可以看到svg文件其实就是一个xml文件,这种文件浏览器也可以识别.因此要查看svg用现成的浏览器就可以了.值得庆幸的是 ...

  5. 一次mysql瘫痪解救

    最近手机app项目访问流量逐步的增加,对服务端webapi考验极大,是在一次新的业务消息推送后,极光推送给手机接受到的客户端达到19万个,此时app立马开始访问速度变慢了,用户体验相当差 客服接到的问 ...

  6. 【我所认知的BIOS】—&gt; uEFI AHCI Driver(4) — 第一个Protocol真难搞

    [我所认知的BIOS]-> uEFI AHCI Driver(4) - 第一个Protocol真难搞 LightSeed 4/23/2014 文章对EFI_DRIVER_BINDING_PROT ...

  7. [AngularJS] Extract predicate methods into filters for ng-if and ng-show

    Leaking logic in controllers is not an option, filters are a way to refactor your code and are compa ...

  8. mysql wait_timeout和interactive_timeout总结

      (1)interactive_timeout:参数含义:服务器关闭交互式连接前等待活动的秒数.交互式客户端定义为在mysql_real_connect()中使用CLIENT_INTERACTIVE ...

  9. javascript常用方法(慢慢整理)

    获取类型:[object object],[object function],[object Undefined]等 Object.prototype.toString.apply(obj); 获取对 ...

  10. js中跨域请求原理及2种常见解决方案

    一.同源策略: 说到跨域请求,首先得说说同源策略: 1995年,同源政策是由 Netscape 公司引入浏览器的.目前,所有浏览器都实行了这个政策. 同源策略是浏览器的一种安全策略,所谓同源是指,域名 ...