## Sublime
~~~
1. 常用快捷键
2. sublime的ctags插件
3. 设置代码片段
~~~
### 必装插件
汉化插件:Chinese Localization https://github.com/rexdf/ChineseLocalization
CSS3:https://github.com/y0ssar1an/CSS3
### 1. 常用快捷键
* * * * *
[Sublime学习资源](http://www.jianshu.com/p/d1b9a64e2e37)
本人使用的`sublime-setting`
~~~
{
"font-face": "OperatorMono-Book",
"font_size": 13,
"tab_size": 4,
"word_wrap": true,
"auto_complete": true,
"scroll_past_end": false,
"highlight_line": true,
"auto_match_enabled": true,
// "color_scheme": "Packages/Color Scheme - Default/IDLE.tmTheme",
"caret_style": "phase",
"default_encoding": "UTF-8",
"line_padding_bottom": 3,
"line_padding_top": 3,
"phpunit-sublime-terminal": "iTerm",
"remember_open_files": true,
"update_check": false,
}
~~~
### 2. sublime的ctags插件
* * * * *
原文:<http://lizelong.com/post.html?id=12>
众所周知,sublime非常适合写代码,但是不适合看代码、查代码,比如zendstudio或者PHPstorm,在想查看父类代码的时候,只需要按住ctrl+鼠标左键就好了,所以很方便。那么sublime能否实现类似的效果呢?答案是当然可以!只需要借助一款叫`CTags`的插件就ok!
安装sublime插件的方式都是一样的,具体步骤如下:
首先需要安装`Package Control`(如果安装过了就跳过这一步)
通过`ctrl+~`唤出控制台并在控制台粘贴以下代码:
**sublime3:**
`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)`
**sublime2:**
`import urllib2,os,hashlib; h = 'df21e130d211cfc94d9b0905775a7c0f' + '1e3d39e33b79698005270310898eea76'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')`
参考地址:https://packagecontrol.io/installation
打开Sublime,在Preferences(首选项)菜单中打开Package Control(插件控制),打开后找到install packages并点击。或者直接使用ctrl + shift + p 并输入install回车!
到这一步,如果没有弹窗报错,那直接搜索ctags, 回车执行,稍等一会看到左下角提示安装成功就好了。如果是要安装其他的插件,那直接搜索要安装的插件名回车就行。
如果弹出错误显示`Package Control:there are no packages for installation`,那就有点麻烦了。网上有说是IPV6的问题,有说是被墙的问题。个人经历,我将IPV6禁用了,也根据资料改了hosts文件,都没用。用了VPN翻墙,Google和YouTube都能正常访问,install插件的时候还是弹窗报这个错,后来索性没管它了,直接去GitHub上面下的zip包,然后解压到了 `C:\Program Files\Sublime Text 3\Data\Packages\CTags` 目录下(前面那截请换成自己的sublime的安装目录)
CTags下载地址:https://github.com/SublimeText/CTags
windows使用还需要一个ctags.exe文件需要下载
下载地址:http://prdownloads.sourceforge.net/ctags/ctags58.zip
下载后解压,这里面就包含一个ctags.exe文件,将它一个文件复制出来(其他都没用了)放到c:/windows里面去,然后要修改相应的配置文件。 通过将 Preference(首选项) -> Package Settings(插件控制) -> Ctags -> Settings Default 中的内容拷贝到 Setting User中,将 "command": "" 中的 "" 填入Ctags.exe的路径位置:
~~~
修改之前:"command": "",
修改之后:"command": "C:\\windows\\ctags.exe",
~~~
搞定之后,在侧左栏的工程/项目文件上右键会看到「CTags: Rebuild Tags」菜单项,这时候我们就可以生成「.tags」的索引文件了,方式如下:
使用「Win+R」:输入指令「`cmd`」,回车。「`cd`」指令进入要跟踪的目标文件夹,输入:「`ctags -R -f .tags`」 手动生成.tags文件。
当你看到文件夹中多了一个 `.tags` 的文件的时候,恭喜你,搞定了。随便选择一个父类名或者函数名,右键选择 `Navigate to Definition` 就可以跳转过去了,或者按住「`Ctrl + shift + 左键`」也可以跳转。不过这个索引文件真不小!
### 3. 设置代码片段
* * * * *
**打开菜单「Tools > Developer > New Snippet**」
默认是:
~~~
<snippet>
<content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<!-- <tabTrigger>hello</tabTrigger> -->
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<!-- <scope>source.python</scope> -->
</snippet>
~~~
快捷键设置:
~~~
<tabTrigger>hello</tabTrigger>
~~~
关闭注释内容即可。
~~~
<content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.
这里写代码片段
]]></content>
~~~
CDATA[] 内就是你要补全的代码片段。
~~~
${序号:默认值}
~~~
**修改补全的代码片段**
如:
~~~
<snippet>
<content><![CDATA[
/**
* ${1:功能注释}
* @param ${2:数据类型} ${3:变量名} ${4:注释}
* @return void
*/
]]></content>
<tabTrigger>phpdoc</tabTrigger>
<!-- <scope>source.python</scope> -->
</snippet>
~~~
**保存代码片段**
保存路径:`C:\Program Files\Sublime Text 3\Data\Packages\User`
或者:`C:\Program Files\Sublime Text 3\Data\Packages\snippet`
(备注:具体视你安装的路径而定)
![](https://img.kancloud.cn/07/0a/070ae45eab026dcf1b7abfc9cee449b8_1026x554.png)