各种IDE用了不少,不是卡就是慢,要不就是功能单一,自从使用了sublime, 各种神清气爽,当然也踩了不少坑,为了避免重复掉坑,记录下自己的一些填坑过程,同时也希望能给其他碰到相同问题的人一些借鉴,如有不当之处,欢迎批评指正。
安装激活
安装
sublime 支持 ubuntu 和 windows.
- 下载地址,根据需要选择对应版本
- ubuntu版本为 deb安装包,双击安装,windows下为exe文件,双击安装。
激活
条件允许的话请使用正版,支持作者开发。
激活码:
1 | —– BEGIN LICENSE —– |
常用插件
package control
`package control`是用于安装管理sublime的插件的组件 安装方法:[官方文档][2] - 使用 ``` ctrl+` ``` 打开sublime终端 - 复制以下代码并粘贴到终端
1
import urllib.request,os,hashlib; h = 'df21e130d211cfc94d9b0905775a7c0f' + '1e3d39e33b79698005270310898eea76'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
Sublime CodeIntel
SublimeCodeIntel 是一个代码提示、补全插件,支持 JavaScript、Mason、XBL、XUL、RHTML、SCSS、Python、HTML、Ruby、Python3、XML、Sass、XSLT、Django、HTML5、Perl、CSS、Twig、Less、Smarty、Node.js、Tcl、TemplateToolkit 和 PHP 等语言,是 Sublime Text 自带代码提示功能的很好扩展。它还有一个功能就是跳转到变量、函数定义的地方,十分方便。
使用 SublimeCodeIntel 之前你需要安装相应程序并把路径写入 ~/.codeintel/config 或 project_root/.codeintel/config 中,ReadMe 中有详细的 说明,不再赘述。Alignment
Alignment 是一个代码格式化插件,它可以使多行代码中的等号对齐,也可以调整多行代码为一个缩进级别,默认快捷键是 ctrl+alt+a(Mac OS 上是 cmd+ctrl+a)。Trimmer
去掉多余空格Bracket Highlighter
BracketHighlighter 是一个括号、引号、标签高亮插件,支持 []、()、{}、””、’’ 和等,比 Sublime Text 自带的高亮要明显得多。 GBK to UTF8
中文支持Git
集合git 功能SublimeLinter
代码分析检测工具Emmet
按下Tab键,Emmet就能把一个缩写展开成一个HTML和CSS代码块,我想提一下Hayaku-集合了方便的层叠样式表缩写。前端必备。SideBarEnhancements
ideBarEnhancements 是一款很实用的右键菜单增强插件,有以 diff 形式显示未保存的修改、在文件管理器中显示该文件、复制文件路径、在侧边栏中定位该文件等功能,也有基础的诸如新建文件/目录,编辑,打开/运行,显示,在选择中/上级目录/项目中查找,剪切,复制,粘贴,重命名,删除,刷新等常见功能。
SideBarEnhancements 还有一个功能就是自定义打开文件的程序,在侧边栏中右键点击一个文件(夹),选择 Open With -> Edit Applications 就可以修改关联了,配置文件自带示例,可以很方便地套用。Markdown Extended
SublimeText 不仅仅是能够查看和编辑 Markdown 文件,但它会视它们为格式很糟糕的纯文本。这个插件通过适当的颜色高亮和其它功能来更好地完成这些任务。SyncedSideBar
当编辑某个文件时,该插件能在左边栏高亮该文件SyncedSideBarBg
同步 sidebar 与 编辑器的背景色,强迫症必备File Icon
给不同类型的文件添加不同的图标Docblockr
用来写注释的。在某个函数顶部敲/**
再按回车主题字体配置
主题在 github 上可以找到很多,也可以自己定义。附加一个可以自行编辑主题的 网站
编译器配置
常见问题
ubuntu 上中文输入问题
Sublime利用Fcitx输入中文(**注意: 注意这是针对Fcitx的方法, 针对IBus是不行的(经测试). Ibus可以去搜一个叫InputHelper来尝试..**)
简单的方法
最简单自动化方法是使用lyfeyaj的git库自动处理:1
2git clone https://github.com/lyfeyaj/sublime-text-imfix.git
cd sublime-text-imfix && ./sublime-imfix自己动手
编写一个
sublime_imfix.c
文件(内容如下):1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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);
}编译
libsublime-imfix.so
1
2sudo apt-get install libgtk2.0-dev
gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC复制库文件到sublime, 并将库提前加载
sudo mv libsublime-imfix.so /opt/sublime_text/
修改文件/usr/bin/subl的内容
sudo gedit /usr/bin/subl
将1
2
exec /opt/sublime_text/sublime_text "$@"修改为
1
2
LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text "$@"至此,使用命令行
subl
启动sublime应该可以输入中文了。修复使用桌面图标打开时无法输入中文, 修改 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
中文显示问题
中英文字体不对齐
解决办法:
菜单 Preference->Settings->User 打开用户配置文件Preferences.sublime-settings (中文版是【首选项】→【设置–用户】), 添加"font_face":"微软雅黑"
,这里使用微软雅黑可以解决问题.然后Ctrll+S保存即可(默认字体Consolas).
可以探索别的字体.“Courier New bold”
中的bold是粗体. Consolas是微软为程序狗设置的字体,但不支持中文.YaHei Consolas Hybrid
是整合了雅黑字体的,效果比微软雅黑好点.安装如下:1
2
3git clone https://github.com/cypro666/yahei.consolas-font.git
cd yahei.consolas-font
./install.sh字不跟随光标
windows下可以安装IMESupport插件解决,linux下还未找到解决方案中文字体显示框框
这个是sublime text 3的bug,当Windows 个性化 显示 中的设置自定义文本大小(DPI),大于默认的100%的时候,就会出现这个bug。
解决方法:
在sublime text 3中,Preference, Settings-User,最后加上一行"dpi_scale": 1.0
中文字体显示乱码
安装ConvertToUTF8
或者GBK Encoding Support
,选择匹配项。中文字符就可以正常显示了。