Sublime Text 2自定义代码补全
昨天在搞定了Sublime Text 2之后,发现了一个极其严重的问题。以前在windows上开发,IDE经常会自动补全代码,比如<%= link_to xxxxxx %>,要是自己一个一个输入<, %, =, %, >,这样开发效率无比低,所以,在转到了Sublime Text 2阵营之后,对于这个问题,头疼不已,好在昨晚花了时间去找了解决方案。
其实对于这个问题,解决方案还是很多的,有人习惯只装一个插件来解决,有人使用Snippets解决,当然,有的大神的方法我也,没学会,这里就不献丑了,现在跟大家分享我是如何在ST2上,利用Snippets实现代码自动补全的。
1. 什么是Snippet
说实话,昨天之前我对这个单词,还停留在其本意,后来才了解到,说穿了,这就是一种自动补全代码的方法,简单来说,就是预先在文件里面定义好规则,但你按照这个规则进行输入的时候,就会出现自动补全,这个语法集貌似使用Json还是什么的,这里不细究,只说明解决方法。
2.如何操作?
方案一:
I. 打开Browse Packages,找到rails文件夹,打开,找到end.sublime-snippet,
自己定义内容
<snippet>
<content><![CDATA[<%= %>]]></content>
<tabTrigger>%</tabTrigger>
<scope>text.html.ruby</scope>
<description>end (ERB)</description>
</snippet>
其中,tabtrigger标签内的内容就是你想要触发的代码,CDATA【】中的内容,就是你想要补全之后的代码。
重启之后,试试,怎么样,很爽吧。唯一不爽的一点,就是光标位置总是出现在最后,这。。。我还没找到更好的办法,如果你有,可以留言,交流哦。。。
2.打开Browse Packages,找到HTML文件夹,打开,找到html.sublime-snippet
自己定义内容,修改内容。
将CDATA【】中的内容,替换为:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN">
<head>
<title>新建网页</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="布尔教育 http://www.itbool.com" />
将<tabTrigger>html</tabTrigger>中html换为xhtml
方案二:
I. 打开tools -> new snippet,会弹出一个snippet模板来;
II. 这个模板是不是跟上面的很像,对了,按照你自己的需要来定义就OK了
3.补充:关于安装了emmet插件后,如何生成头部信息
输入html:4t 然后Tab,生成html4.01过渡版(Transitional)头部信息
输入html:4s 然后Tab,生成html4.01严格版(strict)头部信息
输入html:xt 然后Tab,生成xhtml1.0过渡版(Transitional)头部信息
输入html:xs 然后Tab,生成xhtml1.0严格版(strict)头部信息
输入html:xxs 然后Tab,生成xhtml1.1头部信息
输入html:5 然后Tab,生成htm5头部信息