Sublime Text3—Code Snippets(自定义代码片段)
摘要
程序员总是会不断的重复写一些简单的代码片段,为了提高编码效率,我们可以把经常用到的代码保存起来再调用。
平时用sublime安装各种插件,使用Tab键快速补全,便是snippets(可译为代码片段)的一种。
Sublime编辑器还提供了自定义代码片段的功能(当然不止Sublime有此功能),其官方文档中定义如下:
Whether you are coding or writing the next vampire best-seller, you’re likely to need certain short fragments of text again and again. Use snippets to save yourself tedious typing. Snippets are smart templates that will insert text for you and adapt it to their context.
一、创建snippets
1. 新建和保存
菜单栏中依次选择Tools | Developer | New Snippet...就会新建一个扩展名为
.sublime-snippet的XML语法的文档,注意后缀是识别snippets的关键。代码片段可以任意存储在packages文件夹下,默认会保存在Packages\User文件夹里,为了方便管理和使用建议再新建个文件夹例如snippets,则路径为Packages\User\snippets。
默认结构如下:
<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>
2. content
<content></content>中必须包含<![CDATA[…]]>,在这里面写自定义的代码片段。代码片段如果含有
]]>,需写成]]$NOT_DEFINED>。如果含有
$,需写成\$。
3. tabTrigger
- 在
<tabTrigger></tabTrigger>中设置让Sublime自动补全的触发词(trigger keyword)。
4. scope
设置代码片段在何种语言环境下激活,默认写的是python。
想指定多个scope,可以使用英文逗号
,来分隔。如何知道文档的
Scope是什么?菜单栏依次选择Tools | Developer | Show Scope Name...,快捷键是Ctrl+Alt+Shift+P。
5. description
如果加了
<description>描述内容</description>,点开Tools | Snippets...会显示你定义的描述内容。如果不写则显示文件名。
6. 设置光标位置Fields
<snippet>
<content><![CDATA[
First Name: $1
Second Name: $2
Address: $3
]]></content>
美元符加数字即可设置field markers即光标的位置,按Tab键光标按数字依次从小到大循环,如上从1到2到3再到1。
Shift+Tab可以进行向上跳转。
Esc结束跳转。
$0表示最后一个位置。
7. 镜像域Mirrored Fields
- 相同编号的位置即是镜像域,可同时选中进行编辑。
8. 占位符Placeholders
{数字编号}可以得到一个Tab占位符。{1:default}可以得到一个默认值。按Tab键依次循环选中代码片段中的默认值。
如默认的代码片段Hello, ${1:this} is a ${2:snippet}.会依次循环选中单词this snippet。
二、使用snippets
方法1:菜单栏点击Tools | Snippets...,弹出为当前语法可用的Snippet,点击即插入。
方法2:输入触发词然后按Tab键。
三、安装snippets
方法1:进入Package Control:install Package搜索选择安装已有的代码片段扩展包。
方法2:菜单选择Preferences | Browse Packages...打开,建议新建文件夹snippets方便管理,路径为Sublime Text3\Packages\User\snippets,将写好的代码片段拷贝进去。
参考
掘金:Sublime Text3—Code Snippets(自定义代码片段)
简书:Sublime Text3—Code Snippets(自定义代码片段)
博客园:Sublime Text3—Code Snippets(自定义代码片段)
Sublime Text3—Code Snippets(自定义代码片段)的更多相关文章
- sublime text3 之snippet编写代码片段
sublime text 3 中有个强大的功能就是可以编写各种文件类型的snippet代码片段,可以节省大量的时间. 文件名为:jekyll-top.sublime-snippet(.sublime- ...
- 利用 share code 插件同步代码片段
利用 Settings Sync可以同步 VS code 配置,但它只能同步插件,利用 Settings Sync 再配合 share code 插件可以同步自定义代码片段,可以把 VS code ...
- pycharm自定义代码片段
pycharm自定义代码片段 目录 (一)通用阶段 0 .新建.py文件模板:2 0 .pycharm中添加自定义代码片段:一图全知道:3 1 .定义类:classin 描述 ...
- vscode自定义代码片段,自定义注释片段(动态时间)
下载vscode 一.打开vscode,点击左下角设置图标. 二.点击用户代码片段 三.点击新建全局代码片段文件 四.输入自定义代码片段配置文件名,例如:vue.json 五.进行代码片段配置示例如下 ...
- Sublime Text3自定义代码片段
1.打开工具--插件开发--新建代码片段 会出现下图: 2.在<![CDATA[和]]>内写下你要的代码片段,注意的是代码片段要靠最左边. 3.设置快捷键,把下面tabTrigger标签的 ...
- Sublime Text Snippets(代码片段)功能
原文链接:http://www.bluesdream.com/blog/sublime-text-snippets-function.html 我们在编写代码的时候,总会遇到一些需要反复使用的代码片段 ...
- sublime text 2自定义代码片段
本文引用 http://www.blogjava.net/Hafeyang/archive/2012/08/17/how_to_create_code_snippet_in_subline_tex ...
- vs code 自定义代码片段
1.快捷键Ctrl+Shift+P打开命令输入 snippet : (也可以点击文件=>首选项=>用户代码片段) 2.选择代码语言类型(这里以JavaScrpt为例) 3.在javascr ...
- spring rest docs自定义代码片段
Spring rest docs 文档插件在生成文档时会默认生成6个代码片段,自适应生成其它片段.通过阅读官方文档发现其可以自定义生成的代码片段,但是官方只说了可以自定义模版,修改现有的代码片段的方法 ...
随机推荐
- webvirtmgr-重命名kvm虚拟机的名称
之前部署了Webvirtmgr平台管理kvm虚拟机,由于虚拟机在创建时名称是顺便起的,后续在虚拟机上部署了部分业务.为了便于管理,最好将虚拟机的名称重置下. 现在说下如何修改kvm中虚拟机的名称: 比 ...
- BAT大厂面试流程剖析
在当今互联网中,虽然互联网行业从业者众多,不断崛起的互联网公司也会很多,但如BAT等大厂,仍然是很多同学想要进入的企业.那么本篇文章将会为大家很直白的讲解大厂的面试流程以及侧重点. 首先闲聊一下,为什 ...
- easyUI中textbox或number的数值大小校验
例:textbox里面,要求做两个textbox名字为(A,B),其中两个的数字大小范围是-10~10之间,之后其中A的值必须大于B所填的数字,如果输入错误,则提示出弹出框,并清空数据. <!D ...
- alpa开发阶段团队贡献分
这是我们团队之前决定的分配方式: 1.凡是认真完成自己任务的队员,都将有基础分30分(态度分). 2. 将整个项目细化为不同的任务,列出一个任务清单,在综合.协调完每名成员的意愿后,我会分配清单中的任 ...
- 二维数组转化为一维数组 contact 与apply 的结合
将多维数组(尤其是二维数组)转化为一维数组是业务开发中的常用逻辑,除了使用朴素的循环转换以外,我们还可以利用Javascript的语言特性实现更为简洁优雅的转换.本文将从朴素的循环转换开始,逐一介绍三 ...
- wordpress升级出错
服务器是腾讯云 搜索到的解决方案有几个,试了好几个,不知道哪个是根本原因,反正都操作了. 设置wordpress文件夹和子文件夹的权限 编辑wp-config.php,在文末添加如下: define( ...
- Docker中安装Nexus3
https://blog.csdn.net/sqandczm/article/details/78560710 https://hub.docker.com/r/sonatype/nexus/ htt ...
- MySQL的basedir
C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.7\Data
- 原生js作用域(红宝书)
function fn(){ ; alert(a); // 2; } alert(a);//未被定义: alert(b);//全局变量:b=2: ; function fn1(){ ; functio ...
- SQLSERVER备份恢复后权限问题简单处理.
1. 同事的服务器出现无法访问表, 应用连不上数据库... 远程了下 发现. 使用业务用户登录数据库之后查询无法下拉帮助到表, 必须增加schemas才可以访问到具体的表. 2. 问题解决. 1. 修 ...