中华考试网·阅读新闻
Linux认证 > 综合辅导 > 文章内容

Ubuntu14.04LTS64位安装激活SublimeText3及解决无法输入中文问题的解决方法

2016-2-6编辑:ljnbset

1.下载安装Sublime Text 3

登入官网:http://www.sublimetext.com/3

下载Ubuntu 64 bit 版本的,双击完成安装

注意:终端打开Sublime Text 3的方法是 在终端输入subl即可

2.注册

Help -->

—– BEGIN LICENSE —–

Andrew Weber

Single User License

EA7E-855605

813A03DD 5E4AD9E6 6C0EEB94 BC99798F

942194A6 02396E98 E62C9979 4BB979FE

91424C9D A45400BF F6747D88 2FB88078

90F5CC94 1CDC92DC 8457107A F151657B

1D22E383 A997F016 42397640 33F41CFC

E1D0AE85 A0BBD039 0E9C8D55 E1B89D5D

5CDB7036 E56DE1C0 EFCC0840 650CD3A6

B98FC99C 8FAC73EE D2B95564 DF450523

—— END LICENSE ——

3.解决中文输入问题

a.保存下面的代码到文件sublime_imfix.c(位于~目录)


#include


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);

}

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

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

注意:如果提示 gtk/gtkimcontext.h:没有那个文件或目录,那就是没有相关的依赖软件,安装命令:

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

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


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


d.修改文件/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 "$@"

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

Linux教程:Ubuntu终端命令--查看端口占用及关闭
咨询热线:4000-525-585(免长途费)