Ubuntu安装Sublime Text并输入中文
Sumblime Text3是一款传说中的神级代码编辑器,具有下面特点:
1、代码高亮,自己主动补全
2、各种插件扩展
3、外观简洁舒适
4、跨平台(Windows,Linux,OS X)
简而言之就是一款让人爱不释手的编辑器。事不宜迟,立即介绍下怎样在Ubuntu中安装它并使其能输入中文
測试环境:Ubuntu Kylin 14.04
步骤:
1、安装搜狗输入法
2、安装sublime text3
3、安装package control(非必须,但推荐安装)
4、改动sublime_imfix.c
5、将sublime_imfix.c编译成共享库
6、使双击打开的sublime text能输入中文
第一步:安装搜狗输入法
在搜狗输入法官网获得sogou for Linux的deb包并安装
第二步:安装sublime text3
打开终端(Ctrl + Alt + t),输入下面代码:
sudo add-apt-repository ppa:webupd8team/sublime-text-3
按回车
输入下面代码并回车:
sudo apt-get update
待升级完毕后。输入下面代码并回车
sudo apt-get install sublime-text-installer
静候sublime text安装完成
第三步:安装package control(非必须,但推荐安装)
(package control是sublime text中用于管理各种插件的工具,为了方便地使用sublime text。推荐大家安装它)
在桌面创建sublime text的快捷方式并打开sublime text(在文件管理器进入/usr/share/applications文件夹并复制图标到桌面就可以)
然后按快捷键ctrl+`(Esc以下那个键),在弹出的命令输入窗体输入以下信息并回车
<span style="color: rgb(51, 51, 51); font-family: 'Microsoft Yahei', 微软雅黑, arial, 宋体, sans-serif; font-size: 16px; line-height: 28px; text-align: justify;">import urllib.request,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();urllib.request.install_opener(urllib.request.build_opener(urllib.request.ProxyHandler()));open(os.path.join(ipp,pf),'wb').write(urllib.request.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read())</span>
然后静候package control完毕安装又一次启动SublimeText 3,然后使用快捷键Ctrl + Shift + p,在弹出的输入框中输入Package Control则能够看到Install Package的选项进行python开发的同学直接ctrl+b就能执行python程序了。有人推荐学习c/c++的同学安装C++ snipptes。ConvertToUTF8,SublimeAStyleFormatter等插件,这些就由各位自己探索了。
第四步:改动sublime_imfix.c
打开终端,输入
gedit 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);
}
按保存并关闭文本
第五步:将sublime_imfix.c编译成共享库libsublime-imfix.so
(so文件是linux的动态库文件。类似windows的dll文件)
编译须要gtk工具包。约为100M,推荐各位在网络状况良好和选择了合适的软件源的情况下进行。
在终端输入:
sudo apt-get install gnome-core-devel
然后将代码编译成共享库。此步没有反应就是最好的反应:
gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC
然后输入下面代码将libsublime-imfix.so复制到sublime_text所在目录。此步相同是没有反应就是最好的反应
sudo mv libsublime-imfix.so /opt/sublime_text/
第六步:使双击打开的sublime text能输入中文
(这一步事实上是在sublime text的快捷方式中添加执行上一步编译的libsublime-imfix.so的代码)
在终端中输入下面命令:
sudo gedit /usr/share/applications/sublime_text.desktop
把打开的文本改为下面代码:
[Desktop Entry]
Version=1.0
Type=Application
Name=Sublime Text
GenericName=Text Editor
Comment=Sophisticated text
Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text %F"
Terminal=false
MimeType=text/plain;
Icon=sublime-text
Categories=TextEditor;Development;Utility;
StartupNotify=true
Actions=Window;Document; [Desktop Action Window]
Name=New Window
Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text -n"
OnlyShowIn=Unity; [Desktop Action Document]
Name=New File
Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text --command new_file"
OnlyShowIn=Unity;
又一次创建快捷方式。重新启动sublime text。按ctrl+空格激活搜狗输入法,就能愉快地输入中文了。
PS:有些同学喜欢在终端使用命令行来打开sublime text,这须要下面步骤:
(原理同第六步)
在终端输入
sudo gedit /usr/bin/subl
把打开的文本改为下面代码:
#!/bin/sh
LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text "$@"
照例按保存并关闭文本
这样在终端中输入subl 将能够使用搜狗输入中文
这是我第一次写博客,难免有不足之处,敬请各路大神提供意见和建议,我不胜感激。
特别鸣谢:锁锁师兄
Ubuntu安装Sublime Text并输入中文的更多相关文章
- 解决 Ubuntu 下 Sublime Text 无法输入中文的问题
解决 Ubuntu 下 Sublime Text 无法输入中文的问题 1. 安装依赖库 sudo apt-get install build-essential sudo apt-get instal ...
- 解决Ubuntu下sublime中不能输入中文的问题
解决Ubuntu下sublime中不能输入中文的问题 Ubuntu下安装sublime后,不能输入中文,而在其他软件中能正常输入,这是sublime的bug,解决方案是在通过shell在每次运行sub ...
- Ubuntu安装sublime Text 3并配置可以输入中文
使用Ubuntu系统后,想找一个顺手的编辑器,sublime作为我的首选编辑器,在安装和配置可输入中文时遇到各种个样的问题,总结一些: 1:问题: 我的系统是Ubuntu 18.04 LTS,尝试多次 ...
- ubuntu下安装Sublime Text并支持中文输入
Sublime Text还是文本编辑器中比较不错的,就是他的文件对比有些差劲吧,还有中文输入需要打补丁,不知道开发者是怎么想的... 当然,这个软件是收费的,但是不买也能一直的使用,在我天朝就这点好处 ...
- Ubuntu安装 Sublime Text 及常用插件推荐
之前一直在用 Code Blocks 这个IDE工具,可用着还是感觉不怎么好,于是在网上找到了一篇文章,上面介绍了不少IDE,我找到了Sublime Text 感觉挺不错的. 帖子地址: http:/ ...
- [笔记]--Ubuntu安装Sublime Text 2
sublime text 2 有两种安装方式,一种是添加软件源,然后用命令安装.另外一种是下载安装包.解压手动安装.Sublime Text 2 入门及技巧 一.下载安装 1.在Sublime Tex ...
- Ubuntu安装Sublime Text 3
终端命令行安装: Install the GPG key: wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo a ...
- ubuntu15.04下sublime text不能输入中文的解决
原因是由于中文输入法的输入焦点不能插入sublime的输入窗口中,需要使用代码强制插入输入焦点. 代码是cjacker 君提供的,可以看原始的讨论帖子: http://www.sublimetext. ...
- [转] ubuntu安装Sublime Text 3并使用SublimeClang插件
原文地址:https://blog.csdn.net/cywosp/article/details/32721011 3. 安装强大的SublimeClang插件 SublimeClang是Subli ...
随机推荐
- Codewars练习Python
计算一个数组的中间数,数的两边和相等,并返回index值 如:数组[1,2,3,4,6] 返回3(数组序号从0开始) def find_even_index(arr): ""&qu ...
- 我的DBDA类
<?php class DBDA { public $host="localhost"; public $uid="root"; public $pwd= ...
- (转)中国电信友华PT921、PT921G光猫设置路由,无线WIFI设置
中国电信友华PT921.PT921G光猫设置路由,无线WIFI设置. 第一步,用管理员帐号密码登陆,打开浏览器,输入http://192.168.1.1 登陆帐号:telecomadmin登陆密码:n ...
- JS高级——弹出框的美化
替换原有的alert方法,window.alert=function(){} https://blog.csdn.net/kirsten_z/article/details/76242286 http ...
- Farseer.net轻量级开源框架 入门篇:修改数据详解
导航 目 录:Farseer.net轻量级开源框架 目录 上一篇:Farseer.net轻量级开源框架 入门篇: 添加数据详解 下一篇:Farseer.net轻量级开源框架 入门篇: 删除数据详解 ...
- js删除局部变量
alert('value:'+str+'\ttype:'+typeof(str)) //声明变量前,引用 var str="dd"; alert('value:'+str+'\tt ...
- (转)淘淘商城系列——导入商品数据到索引库——Service层
http://blog.csdn.net/yerenyuan_pku/article/details/72894187 通过上文的学习,我相信大家已经学会了如何使用Solrj来操作索引库.本文我们将把 ...
- (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
http://blog.csdn.net/yerenyuan_pku/article/details/72863323 我们知道Jedis在处理Redis的单机版和集群版时是完全不同的,有可能在开发的 ...
- MFC_2.1使用单选和多选框
使用单选和多选框 单选 1.拖控件 设置名字,CTRL+D设置顺序,属性设置第一个GROUP为TRUE: 2.设置第一个按钮绑定变量为 值 INT型 名称m_RadioIndxe; 3.设置单击响应内 ...
- 模板TemplateRef
TemplateRef<void> <ng-template #模板名称></ng-template>