Sublime Text:一款具有代码高亮、语法提示、自动完成且反应快速的编辑器软件,不仅具有华丽的界面,还支持插件扩展机制,用她来写代码,绝对是一种享受。相比于难于上手的Vim,浮肿沉重的Eclipse,VS,即便体积轻巧迅速启动的Editplus、Notepad++,在SublimeText面前大略显失色,无疑这款性感无比的编辑器是Coding和Writing最佳的选择,没有之一。
如何优雅地使用Sublime Text之目录:
- Sublime Text 2和3的对比
- Sublime Text 3安装插件
- Sublime Text 3插件推荐
- 定制属于自己的快捷键
- Sublime不可不知的实用技巧
- 定制属于自己的个性化主题
- Sublime锦上添花些许设置
- 写在一路更来的结语
Sublime Text 2和3的对比
相比于2,Sublime Text 3就秒启动一项,就压倒性地胜利了。因此在之后的叙述中都以Sublime Text 3为主角。并且3一直在不断的完善更新,具体的差异可参看 Sublime Blog .简单的说:
- ST3支持在项目目录里面寻找变量
- 提供了对标签页更好地支持(更多的命令和快捷键)
- 加快了程序运行的速度
- 更新了API,使用Python3.3
强烈推荐朋友们使用3! 唯快不破,不解释。
Sublime Text 3安装插件
Sublime Text的强大就是她拥有强大的课可扩展性。您可根据自己的需要安装不同的插件;这使得她变的无比强大的同时又不失轻便。
-
插件安装方式一:直接安装:
安装Sublime text 3插件很方便,可以直接下载安装包解压缩到Packages目录(菜单->preferences->packages)。
-
插件安装方式二:使用Package Control组件安装:
按Ctrl+`调出console(注:安装有QQ输入法的这个快捷键会有冲突的,输入法属性设置-输入法管理-取消热键切换至QQ拼音)粘贴以下代码到底部命令行并回车:
1import 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())
重启Sublime Text 3。如果在Perferences->package settings中看到package control这一项,则安装成功。按下Ctrl+Shift+P调出命令面板输入install 调出 Install Package 选项并回车,然后在列表中选中要安装的插件。
PS:国内使用SublimeText3,经常可能遇到无法安装可用插件问题,可remove掉Package Control重新安装下;如遇到连Package Control也无法安装,则可以在别处拷贝一份关于Package Control的文件-(Package Control.sublime-package)存放于Installed Packages
目录之下即可。
如果如上述操作,还是不能正确安装,并且在 sublime 的 console 安装 package control 出现 275309
错误,那么去打开 Preferences->Settings 找到ignored_packages 配置选项,删除其中对 Package Control 的约束即可(update@16-12-06)。
Sublime Text 3插件推荐
无插件,不神器! 根据自己的需要定制属于自己的强大插件集;下面是一些常用的推荐。
Sublime Text3插件:增强篇
20个强大的SublimeText插件
作为在移动端旧游之后,又Web端新游的自己,墙裂推荐以下这么几款插件:
MarkDown Editing
SublimeText不仅仅是能够查看和编辑 Markdown 文件,但它会视它们为格式很糟糕的纯文本。这个插件通过适当的颜色高亮和其它功能来更好地完成这些任务。关于如何在SublimeText下高效些东西可参见文章:sublime text 2(3)下的Markdown写作 抑或是前段时间写下的追寻高效工作的一路折腾㈡
SideBarFolders
打开的文件夹都太多了? 来用这个来管理文件夹,世界原来也可以这么美好。⭐️⭐️⭐️⭐️⭐️
SideBarFolders
Sublime Terminal
这个插件可以让你在Sublime中直接使用终端打开你的项目文件夹,并支持使用快捷键。
ColorPicker
通常,如果你想使用一个颜色选择器则可能打开 Photoshop 或 GIMP。而在 Sublime Text 中,你可以使用内置的颜色选择器。安装完成后,只要按下Ctrl / Cmd + Shift + C 快捷键。
SublimeREPL
这可能是对程序员很有用的插件。SublimeREPL 允许你在 Sublime Text 中运行各种语言(NodeJS , Python,Ruby, Scala 和 Haskell 等等)。
Ctags插件
有童鞋抱怨Sublime Text不能支持函数的跳转(比如像Eclipse那样,按住Control点击该方法或者对象,即可跳转到定义的地方; Alt+←即可回到原处)。其实Sublime Text也可以借助插件实现之(当然,有些情况下:Can not find defination)毕竟这个也是借助正则来匹配完成的。因此这个也就要求代码很规范。这个插件相对来讲会有些麻烦,具体的可以参见:Sublime Text ctags 的配置.
Update @2016-11: 在最新的3124版本中,Sublime已经注入了函数Show Definition
功能————which will show where a symbol is defined when hovering over it with the mouse;具体可参见Sublime Text 3 Build 3124。如此一来,Ctags 插件就显得很鸡肋了,而且它的配置辣么麻烦。
SublimeLinter插件
SublimeLinter 是前端编码利器——Sublime Text 的一款插件,用于高亮提示用户编写的代码中存在的不规范和错误的写法,支持 JavaScript、CSS、HTML、Java、PHP、Python、Ruby 等十多种开发语言。这篇文章介绍如何在 Windows 中配置 SublimeLinter 进行 JS & CSS 校验。
比如写例如像lua这样的弱语言脚本代码,有这个可以规避掉很多不该有的低级错误吧?当然这也需要你SublimeLinter安装完毕之后再安装一个SublimeLinter-lua
即可。具体的使用可以参见:借助 SublimeLinter 编写高质量的 JavaScript & CSS 代码
SideBarEnhancements插件
SideBarEnhancements是一款很实用的右键菜单增强插件;在安装该插件前,在Sublime Text左侧FOLDERS栏中点击右键,只有寥寥几个简单的功能;安装了就相当于给其丰了大胸一般。⭐️⭐️⭐️⭐️
更强大的是,该插件还能让我们自定义快捷键呼出某个浏览器以预览页面!这样就不用到项目目录下寻找和拖动到特定浏览器中预览了。
安装此插件后,点击菜单栏的preferences->package setting->side bar->Key Building-User,键入以下代码:
|
|
这里设置按Ctrl+Shift+C复制文件路径,按F2即可在Chrome浏览器预览效果(如果需要的话,也可以根据自己的需要为Firefox,Safari,IE,Opera等加上),当然你也可以自己定义喜欢的快捷键,最后注意代码中的浏览器路径要以自己电脑里的文件路径为准。
HTML-CSS-JS Prettify
一款集成了格式化(美化)html、css、js三种文件类型的插件,即便html,js写在PHP文件之内。插件依赖于nodejs,因此需要事先安装nodejs,然后才可以正常运行。插件安装完成后,快捷键ctrl+shift+H完成当前文件的美化操作。插件对html、css文件的美化不是非常满意,但还可以,后面将说明如何修改css美化脚本。本人用起来超级爽的,鉴于篇幅,就不赘述,可以参见这篇介绍。
CSScomb CSS属性排序:
有时候看看自己写的CSS文件,会不会觉得属性很乱查找不易维护难?CSScomb可以按照一定的CSS属性排序规则,将杂乱无章的CSS属性进行重新排序。选中要排序的CSS代码,按Ctrl+Shift+C,即可对CSS属性重新排序了,代码从此简洁有序易维护,如果不款选代码则插件将排序文件中所有的CSS属性。当然,可以自己自定义CSS属性排序规则,打开插件目录里的CSScomb.sublime-settings文件,更改里面的CSS属性顺序就行了。因为这个插件使用PHP写的,要使他工作需要在环境变量中添加PHP的路径,具体请看github上的说明。
SublimeTmpl 快速生成文件模板
一直都很奇怪为什么sublime text 3没有新建文件模板的功能,像html头部的DTD声明每次都要复制粘贴。用SublimeTmpl这款插件终于可以解脱了,SublimeTmpl能新建html、css、javascript、php、python、ruby六种类型的文件模板,所有的文件模板都在插件目录的templates文件夹里,可以自定义编辑文件模板。⭐️⭐️⭐️⭐️+
SublimeTmpl默认的快捷键:
|
|
如果想要新建其他类型的文件模板的话,先自定义文件模板方在templates文件夹里,再分别打开Default (Windows).sublime-keymap、Default.sublime-commands、Main.sublime-menu、SublimeTmpl.sublime-settings这四个文件照着里面的格式自定义想要新建的类型,这里就详细介绍了,请各位自己折腾哈~
Javascript-API-Completions:
支持Javascript、JQuery、Twitter Bootstrap框架、HTML5标签属性提示的插件,是少数支持sublime text 3的后缀提示的插件,HTML5标签提示sublime text3自带,不过JQuery提示还是很有用处的,也可设置要提示的语言。
sublime-jq-plugin
SFTP:快速编辑远程服务器文件
在Win下用Xftp
和 WinScp
,被这种需要切换点击or F5刷新的手动操作蛋疼到无语;故此一遇见这SFTP
,顿觉这世界都美好了许多。当然Sublime下面也有些其他同步插件,比如FtpSnyc
,但是配置起来的错误提示一点都不人性化,就毫不留情的舍弃了。Sublime下有SFTP
,只要Ctrl+S
即可同步本地到服务器,妥妥的爽歪歪有么有?如何配置,请参见在 Sublime Text中使用 SFTP 插件快速编辑远程服务器文件;如欲使用FtpSync
可参见Sublime使用及FtpSync远程同步;大道至简,因简而悦;开心垒码,值得折腾。
WakaTime – 记录你的Code时间;
WakaTime可以做到精确地统计到你花在某个项目上的时间;WakaTime针对不同的IDE,拥有不同的插件,在Sublime上安装着插件,就能统计到我使用Sublime进行的所有项目的行为。可以高效管理和知晓自己code时间;并且,统计完善, 适合发朋友圈装逼(如果你喜欢的话)~
Waka的基本设计和rescuetime类似。每个人注册完将获取一个key,装一个客户端,把key输进去(登陆是同一个道理),然后它就把本地的所有行为带个key扔给服务器来统计,一段时间之后给你个报表。不过Waka做的真的很精准,精确到每一个文件用了多少秒,每一种语言用了多少时间。
安装和使用都很简单,请参见这里。另外一篇比较详细的文章时间都去哪了?用RescueTime和WakaTime来记录你的时间,对RescueTime和WakaTime有一个更为详细的叙述,可以一读。
DocBlockr: 代码块注释
可以快速的对函数进行注释。保持代码规范。支持多种语言,有 JavaScript (including ES6), PHP, ActionScript, Haxe, CoffeeScript, TypeScript, Java, Apex, Groovy, Objective C, C, C++ and Rust.
/*
:回车创建一个代码块注释/**
:回车在自动查找函数中的形参等等。
它会生成 JSDoc 格式的注释。如果你从没有使用过类似的工具,DocBlockr 会让你觉得以前没有它是如何写代码的。帮助你创造你的代码注释,通过解析功能,参数,变量,并且自动添加基本项目;如果你愿意其更为便捷,不妨再结合AutoHotKey
,高效注释,由此开启。
sublime-text-git: Git 版本控制
可视化的操作:帮助你与你的Git repo协议进行交互。它支持很多命令像init,push, pull, branch, stash,等等。使用它当然提前需要安装 Git,并做好响应的配置;对于这个插件,不妨看下这篇文章 Using Git Inside of Sublime Text to Improve Workflow,相信她的伴随不会让你失望的。⭐️⭐️⭐️⭐️⭐️
advancedNewFile: 快速创建文件
当我们在 Sublime Text 编辑器里我们可以通过快捷键command+n
(win: ctrl+n
),来新建一个文件,然后command+s
(Win:ctrl+s
)进行弹出保存框,填写文件名进行保存。还是老问题,麻烦!!我们接下来就通过安装advancedNewFile插件来提升我们在Sublime Text编辑器下的创建文件速度。⭐️⭐️⭐️⭐️
关乎其使用,安装完成之后,运用快捷键command+alt+n
(win: ctrl+alt+n
)
,Sublime Text底部会弹出输入框;我们只需在这个输入框里输入我们需要新建的文件名回车即可(我们甚至可以带路径,譬如:src/components/perfect.vue;这就会在当前项目目录下,建立该文件;需要注意的是这路径前面不可加 ‘/‘, 这会使得建立的路径成为用户目录,而非改项目目录)。默认情况下文件会存储在当前目录,如果当前没有目录,会存储在用户的家目录。
TrailingSpaces: 检测并一键去除代码中多余的空格
这款插件本身倒没什么。但是如果你写前端,并处在当下这个时代,她就很有用(话说,Eslint 等工程限制级工具必须使用吧,那么项目对于空格的约定肯定是有必要的,但也会令你头疼吧?那么这款插件的作用就体现出来了)她可以自动将多余的空格标红,以示提醒。当然,如果你想一键摒除之,这也很好办,加入一点配置即可:在 Preferences / Key Bindings – User加上如下代码即可(数组内部,当然快捷键可自行约定,我这里用的是ctrl+shift+d
);(⭐️⭐️⭐️⭐️⭐️ For Front-End)
|
|
剩下些许其他的可以按需安装的插件,比如:
- ConvertToUTF8 支持 GBK, BIG5, EUC-KR, EUC-JP, Shift_JIS 等编码的插件
- Bracket Highlighter 用于匹配括号,引号和html标签。对于很长的代码很有用。安装好之后,不需要设置插件会自动生效
- DocBlockr 可以自动生成PHPDoc风格的注释。它支持的语言有Javascript, PHP, ActionScript, CoffeeScript, Java, Objective C, C, C++
- Emmet(Zen Coding)快速生成HTML代码段的插件,强大到无与伦比:可以超快速编写HTML/CSS/JS,当然这个插件还支持多种编译环境,如常见的:Eclipse/Aptana、Coda、Notepad++、Adobe Dreamweaver、TextMate等,web开发必备!!!。⭐️⭐️⭐️⭐️⭐️
- jsFormat 格式化js代码,懂者自懂;强迫症Coder必备!默认快捷键Ctrl+Alt+F。
- phpFormat 格式化php代码,懂者自懂;强迫症Coder必备!
- CSS Compact Expand CSS属性展开收缩:写CSS的盆友,喜欢将其写多行还是一行(个人喜欢将其格式化为多行)?如果阅读别人的代码不符合自己的习惯,可以用CSS Compact Expand这个插件将CSS格式化一下,按 Ctrl+Alt+[ 收缩CSS代码为一行显示,按 Ctrl+Alt+] 展开CSS代码为多行显示;强迫症Coder必备!。
- Autoprefixer插件:这是一款CSS3私有前缀自动补全插件;该插件使用CanIUse资料库(当然,SublimeText自然也有CanIUse这个插件咯),能精准判断哪些属性需要什么前缀,与CssComb插件一样,该插件也需要系统已安装Node.js环境;使用方法:在输入CSS3属性后(冒号前)按Tab键即可。
- YUI Compressor:压缩JS和CSS文件,按F7键后,若压缩当前文件(demo.js),则压缩后的文件(demo.min.js)保存在该文件的同级目录,需要安装java的JDK。使用方法:YUI Compressor
- ClickableURLs:可点击的URL
使用小插件ClickableURLs可以让文件中的URL能够点击。 - EncodingHelper:编码众多,比较丰富。安装后,在右下角的UTT-8右键可以将其他编码转换成UTF-8。
- WordCount:可以实时显示当前文件的字数。安装后,后下角多出字数。
- SyncedSideBar: 每次打开文件,侧边栏都会同步显示该文件所在目录树中的位置(如果打开的文件是目录树的子集,还能将目录树自动展开,真是爱之不已,挺有用的一款插件)。⭐️⭐️⭐️⭐️⭐️
- AutoFileName:快捷输入文件名,文件路径自动提示的。自动完成文件名的输入,如图片选取,输入”/”即可看到相对于本项目文件夹的其他文件。⭐️⭐️⭐️⭐️
- Vue Syntax Highlight: Vue(*.vue)高亮插件;于前端而言,使用
Vue
框架开发,是一个很酷爽的存在,那么此插件也就很有必要拥有;同时Jade
,SASS
等插件也是很有拥有的必要,谁用谁知道(说到用vue, 这vue-cli
就蛮有使用的必要了( Webpack, Eslint, Test等都配置完善,十分贴心); 而写Js代码,于稍大项目 Eslint 就很有使用必要,而 sublime 在针对使用 Eslint 的*.vue
文件,目测还没有很好格式化插件,坐等诞生