Sublime Text3—自定义代码片段(Code Snippets)


声明:本文转载自https://my.oschina.net/sichunchen/blog/1539610,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

摘要

程序员总是会不断的重复写一些简单的代码片段,为了提高编码效率,我们可以把经常用到的代码保存起来再调用。

平时用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:将写好的代码片段拷贝过来,建议放在Sublime Text 3\Packages\User下面的文件夹中方便管理

本文发表于2017年09月19日 10:37
(c)注:本文转载自https://my.oschina.net/sichunchen/blog/1539610,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 1974 讨论 0 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1