众所周知,Sublime是一个功能强大的编辑器,有着清爽的界面,海量精良的插件和自带的Snippet等实用功能。下面是为准备在自己的Macbook上安装并使用Sublime的OIers专门写的讲解教程。
1.下载:
上Sublime官网https://www.sublimetext.com/3直接Download即可,暂时最新版本为3143版。
下载到Download文件夹后双击程序即可自动安装。
2.修改默认打开方式:
安装结束后即可直接使用(不过右上角会有UNREGISTERD标识,说明这是未付费的试用版,可以上网搜索使用破解版(个人认为没有必要),经济许可的可以购买正式版。
如果对于某种类型(扩展名)的文件,希望这种文件全部用Sublime打开,可以按照这种方法:
右击文件->显示简介->打开方式->Sublime->全部更改
3.默认在同一个窗口打开:
默认用Sublime打开的文件,会自动重新打开一个窗口而不是在原有的窗口里新建标签页打开,这一点很麻烦,解决方法是:
工具栏->Preferences->Preferences.sublime-settings-User
{
"font_size": 20
}
添加一行代码,即改为:
{
"open_files_in_new_window":false,
"font_size": 20
}
注意逗号!!
这样重启Sublime之后就可以在同一个窗口打开了。
4.插件下载:
插件是Sublime之所以强大的最主要因素,但下载插件之前必须修改Sublime内部配置,具体方法是:
从https://packagecontrol.io上点击Install Now,并复制如下代码:
1 import urllib.request,os,hashlib; h = ‘6f4c264a24d933ce70df5dedcf1dcaee‘ + ‘ebe013ee18cced0ef93d5f746d80ef60‘; 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)
接着Control+ ` 打开运行框并在最下面的框中粘贴这段代码,运行完毕后重启Sublime,能在在工具栏的Preference里看到Package Control选项则说明安装成功。
5.更换主题:
Sublime官网有海量主题可供选择,其中护眼主题等等都是很好的选择,可以去官网预览,这里推荐口碑十分不错的Brogrammer主题:
Command+Shift+P可以打开Package Control,在这里可以直接查找插件
Command+Shift+P -> Install Package -> Theme Brogrammer
Preferences -> color scheme -> Brogrammer
这样就可以更改主题了。
6.快捷键打开终端
比赛中经常需要写脚本,GDB调试等测试代码,这时就需要代码所在文件夹中打开终端,Sublime的Terminal插件可以满足需求。
Install Package -> Terminal
之后就可以Command+Shift+T打开代码文件所在文件夹的终端了。
7.自动同步侧边栏等背景色
打开侧边栏时会发现背景色是白色的,与代码编辑框的黑色背景很不协调,我们可以下载SyncedSidebarBg自动同步侧边栏,编译运行栏等的背景颜色与主题背景颜色相同(当然字体前景色也会自动作相应修改,十分方便)
8.常用快捷键
Command+B 编译(Command+Shift+B可选择运行,但无法向运行框中输入数据)
Command+K+B 显示侧边栏
支持一般编辑器的所有快捷键(复制粘贴等),其余数十个这里不一一赘述,有需要的可以上网查找。
9.snippet
Sublime最吸引人的特性之一,可以只写几个字母然后通过回车键或Tab键出发自动补全功能。
Tools -> Developer -> New Snippet...
注意<scope>里是source.c++!
在CDATA后的中括号内写上补全后的代码,在tabTrigger里写上触发代码,${1}表示光标停留位置(转到下一个按Tab键即可),${2:hello}表示此处默认为hello并自动光标选择“hello”。
编辑完毕后文件后缀名为.sublime-snippet,保存在它默认给你的文件夹里即可。
下面是两份我自己的代码,第一份是快速读入模板,第二份是头文件。
1 <snippet> 2 <content><![CDATA[ 3 templates<typename T>inline void rd(T &x){ 4 int t; char ch; 5 for (t=0; !isdigit(ch=getchar()); t=(ch==‘-‘)); 6 for (x=ch-‘0‘; isdigit(ch=getchar()); x=x*10+ch-‘0‘); 7 if (t) x=-x; 8 } 9 10 ]]></content> 11 <!-- Optional: Set a tabTrigger to define how to trigger the snippet --> 12 <!-- <tabTrigger>hello</tabTrigger> --> 13 <tabTrigger>rd</tabTrigger> 14 <!-- Optional: Set a scope to limit where the snippet will trigger --> 15 <!-- <scope>source.python</scope> --> 16 <scope>source.c++</scope> 17 </snippet>
<snippet> <content><![CDATA[ #include<cstdio> #include<cstring> #include<algorithm> #define rep(i,l,r) for (int i=l; i<=r; i++) typedef long long ll; int main(){ freopen("${1:a}.in","r",stdin); freopen("${2:a}.out","w",stdout); ${3} return 0; } ]]></content> <!-- Optional: Set a tabTrigger to define how to trigger the snippet --> <!-- <tabTrigger>hello</tabTrigger> --> <tabTrigger>ii</tabTrigger> <!-- Optional: Set a scope to limit where the snippet will trigger --> <!-- <scope>source.python</scope> --> <scope>source.c++</scope> </snippet>
常用插件一般就是这些,其余可自行Google或到官网上了解。希望这篇文章能对各位OIers有帮助。