sublime tex创建可服用的片段
---恢复内容开始---
sublime text 2学习(二):创建可复用的代码片段
对于工程师来讲,写一个html页面的基本结构是体力活,每次去拷贝一个也麻烦,sublime text 2 提供了一个很好的复用代码片段。
在菜单上点击Tools -> New Snippet,会新建一个xml文件页签:
1 <snippet> 2 <content><![CDATA[ 3 /** 4 * PHPVersion: 5.4.x 5 * Author : ${1:zhangjun <zhangjun516@126.com> } 6 * FileName : $TM_FILENAME 7 * FilePath : $TM_FILEPATH 8 * TextEncode: ${2:UTF-8} 9 * ExpandTabs: $TM_SOFT_TABS 10 * TabSize : $TM_TAB_SIZE 11 * DateTime : ${3:[DateTime]} 12 * ToDo : ${4:[What to do in this Programme?]} 13 */ 14 ]]></content> 15 <!-- Optional: Set a tabTrigger to define how to trigger the snippet --> 16 <tabTrigger>php-title</tabTrigger> 17 <!-- Optional: Set a scope to limit where the snippet will trigger --> 18 <!-- <scope>source.python</scope> --> 19 </snippet>
注释已经说的比较详细了。
content 里面就是代码模版:${序号:默认值} ,序号相同的地方光标会同时停在那可以多处同时编辑。序号大小就是tabindex。在实际使用代码的时候,可以使用tab切换光标位置。
tabTrigger是指输入该字符串后tab就是在光标插入content中的内容。
scope是指在何种文件类型中使用。
编
辑完之后保存为 C:\Users\[用户]\AppData\Roaming\Sublime Text
2\Packages\User\html5.sublime-snippet (Win7下)
默认的保存路径就行。后缀必须是.sublime-snippet。
保存完重启Sublime text 2,新建文件:输入php-title,tab会出现如下效果:
${1}出现了两次,所以光标同时编辑图中两处。
${2:this},所以在2处出现this默认值。${1}处编辑完按tab就到${2}处。
创建plugin;
tools->new plugin
import datetime, getpass import sublime, sublime_plugin class AddDateCommand(sublime_plugin.TextCommand): def run(self, edit): self.view.run_command("insert_snippet", { "contents": "%s" % datetime.datetime.now().strftime(" %Y-%m-%d %a %H:%M") } ) class AddTimeCommand(sublime_plugin.TextCommand): def run(self, edit): self.view.run_command("insert_snippet", { "contents": "%s" % datetime.datetime.now().strftime("%H:%M") } )
在preferences->key Bindings User
{"keys": ["ctrl+;"],"command": "add_date"},
你在按住ctrl+;就会出现时间
OK, That's all。
---恢复内容结束---