前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ubuntu 16.04 LTS 的 Sublime Text 3 安装及中文配置

Ubuntu 16.04 LTS 的 Sublime Text 3 安装及中文配置

作者头像
剑影啸清寒
发布2019-05-26 10:04:58
1.3K0
发布2019-05-26 10:04:58
举报
文章被收录于专栏:琦小虾的Binary

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://cloud.tencent.com/developer/article/1434883

最近闲来无事,开始学习 Python,选择用 Sublime Text 3 作为开发的 IDE。然而发现安装完毕 Sublime Text 3 之后,不能在其中输入中文,查询了《Ubuntu 16.04下Sublime Text 3 的安装和中文配置》,感觉其中有些内容说明不明确。笔者趁着正在 pip 安装 Python 模块的时间,在该教程基础上进一步说明。

一. sublime text 3 在 Ubuntu 16.04 LTS 下的安装

1. 下载压缩包

笔者使用的是 Sublime Text 的 3 版本,可以直接从官网上下载。

官方下载地址:https://www.sublimetext.com/3

2. 解压

解压命令:

代码语言:javascript
复制
tar xvf sublime_text_3_build_3143_x64.tar.bz2

此时用 cd 命令进入解压的 Sublime Text 3 的文件夹,运行 ./sublime_text 即可打开 Sublime Text 3,但此时还不支持中文输入。

后面说明如何配置 Sublime Text 3 的中文输入法支持。

二. Sublime Text 3 中文输入法配置

1. Ubuntu 16.04 下安装搜狗输入法

笔者个人习惯使用 fcitx 的搜狗输入法。笔者以前也写过在 Ubuntu 上安装搜狗输入法的教程,地址如下:

《Ubuntu 14.04 LTS 安装配置搜狗拼音输入法》

《Ubuntu 14.04 LTS 搜狗拼音输入法不能使用的情况》

笔者在写这两篇博客时还在使用 Ubuntu 14.04 LTS,前几天重新装了 16.04,同样使用上面两篇博客的安装方法,亲测有效。

2. 生成支持中文输入法的 .so 文件

(1) 安装依赖库

首先安装一些依赖库,输入指令如下:

代码语言:javascript
复制
sudo apt-get install libgtk2.0-dev

(2) 新建代码文件

进入 ~ 目录,并新建文件 sublime_imfix.c,指令如下:

代码语言:javascript
复制
cd
gedit sublime_imfix.c

在 sublime_imfix.c 中输入如下代码:

代码语言:javascript
复制
#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) 生成共享库 .so 文件

在 ~ 路径下用 gcc 指令生成共享库 libsublime-imfix.so,指令如下:

代码语言:javascript
复制
gcc -shared -o libsublime-imfix.so sublime_imfix.c  `pkg-config --libs --cflags gtk+-2.0` -fPIC

(4) 复制共享库文件到 Sublime Text 3 所在文件夹

根据自己的 Sublime Text 3 所在路径,将刚刚生成的 libsublime-imfix.so 复制过去。以笔者为例,指令如下:

代码语言:javascript
复制
sudo cp libsublime-imfix.so /home/grq/kit/sublime_text_3/

3. 配置共享库文件

(1) 修改 /usr/bin/subl

此时在 /usr/bin 路径中创造脚本文件,令运行脚本后打开 Sublime Text 3。这时候 /usr/bin 路径中应该没有 subl 文件(如果有该文件,则后续内容中将对应内容进行修改即可),新建文件的命令如下:

代码语言:javascript
复制
sudo gedit /usr/bin/subl

将下面的代码复制进 subl 中(其中第二行内容为 Sublime Text 3 所在位置,此处以笔者的环境为例):

代码语言:javascript
复制
#!/bin/sh
LD_PRELOAD=/home/grq/kit/sublime_text_3/libsublime-imfix.so exec /home/grq/kit/sublime_text_3/sublime_text "$@"

为 subl 提供执行权限,指令如下:

代码语言:javascript
复制
sudo chmod +x subl

此时输入指令:

代码语言:javascript
复制
subl

命令执行后,Sublime Text 3 会弹出运行,且可以支持中文输入。

(2) 更改 .desktop 文件

为了使用鼠标右键打开文件时能够使用中文输入,还需要修改 Sublime Text 3 目录中文件 sublime_text.desktop 的内容。进入 Sublime Text 3 所在路径并修改文件,指令如下(以笔者的工作环境为例,具体需要根据实际情况进行改正):

代码语言:javascript
复制
sudo gedit ~/kit/sublime_text_3/sublime_text.desktop

Desktop Entry 中的字符串

代码语言:javascript
复制
Exec=/opt/sublime_text/sublime_text %F

修改为:

代码语言:javascript
复制
Exec=bash -c "LD_PRELOAD=/home/grq/kit/sublime_text_3/libsublime-imfix.so exec /home/grq/kit/sublime_text_3/sublime_text %F"

Desktop Action Window 中的字符串

代码语言:javascript
复制
Exec=/opt/sublime_text/sublime_text -n

修改为:

代码语言:javascript
复制
Exec=bash -c "LD_PRELOAD=/home/grq/kit/sublime_text_3/libsublime-imfix.so exec /home/grq/kit/sublime_text_3/sublime_text -n"

Desktop Action Document 中的字符串

代码语言:javascript
复制
Exec=bash -c "LD_PRELOAD=/home/grq/kit/sublime_text_3/libsublime-imfix.so exec /home/grq/kit/sublime_text_3/sublime_text --command new_file"

到此处,已经将 Sublime Text 3 的安装与中文配置执行完毕了。完成后的截图如下:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017年12月27日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一. sublime text 3 在 Ubuntu 16.04 LTS 下的安装
    • 1. 下载压缩包
      • 2. 解压
      • 二. Sublime Text 3 中文输入法配置
        • 1. Ubuntu 16.04 下安装搜狗输入法
          • 2. 生成支持中文输入法的 .so 文件
            • (1) 安装依赖库
            • (2) 新建代码文件
            • (3) 生成共享库 .so 文件
            • (4) 复制共享库文件到 Sublime Text 3 所在文件夹
          • 3. 配置共享库文件
            • (1) 修改 /usr/bin/subl
            • (2) 更改 .desktop 文件
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档