关于sublime3自定义snippets小技巧

1. Sublime Text 3自定义Snippets概述

Sublime Text是一款广受欢迎的文本编辑器,能够支持多种编程语言的语法高亮和自动补全等功能。其中,自定义Snippets是一种能够提高编写效率的重要特性。Snippets能够让你通过键入预定义的短语,并按下一个快捷键,自动展开成为一个完整的代码块。在实际的编写过程中,Snippets可以帮助我们快速插入常用的代码片段,从而极大地提高编写代码的效率。

2. Snippets创建和使用

2.1 创建Snippets

我们可以通过下面的步骤来创建一个自定义的snippets:

选择Sublime Text “Tools → Developer → New Snippets…”, 新建一个新文件。

在新建的文件输入框中输入如下内容:

<snippet>

<content>

<![CDATA[

这里写你希望展开的代码片段

]]>

</content>

<tabTrigger>这里写你希望触发的关键字</tabTrigger>

<description>这里写你的代码片段描述</description>

</snippet>

其中,“CDATA” 标记,就是把里面的内容当做普通字符处理,不解析其中的 HTML 代码,在 Snippets 中使用时需要去掉。

2.2 Snippets的使用

创建好的Snippet可以在相应编程语言的文件中使用,方法如下:

输入你希望展开的代码触发关键字,在按下“Tab”键;

按下“Tab”键后,Sublime Text会自动展开你预定义的代码片段;

你可以在代码片段中需要填写内容的地方进行修改,用“Tab”键来快速切换到下一个需要修改的位置。

3. Sublime Text 3自定义Snippet的一些小技巧

除了基本的 Snippets 创建和使用,我们也可以通过一些小技巧来进一步优化 Snippets,提高自己的编写效率。

3.1 创建 Snippets 的命名规范

为了便于后期管理和查找,我们可以在 Snippets 的命名中加入一些规范。比如,在 Snippets 的首行注释中加入一些特殊的标记,来表示该 Snippets 的分类和用途。例如,下面是一个 Swift 语言中的 Snippets 示例:

<snippet>

<!-- 文件类型: Swift -->

<!-- Snippets 描述: 单例模式 -->

<content>

<![CDATA[

这里写你希望展开的代码片段

]]>

</content>

<tabTrigger>这里写你希望触发的关键字</tabTrigger>

<description>这里写你的代码片段描述</description>

</snippet>

这样,当我们需要查找单例模式的 Snippets 时,只需要在搜索栏输入 “Swift” 和 “单例模式” 即可。

3.2 Snippets 中的参数使用

有时,在创建 Snippets 的过程中,我们需要根据不同的情况来进行一些参数化的处理,这时就可以在 Snippets 中使用参数。例如,下面是一个 Python 代码块中使用参数的 Snippets 示例:

<snippet>

<!-- 文件类型: Python -->

<!-- Snippets 描述: 创建一个 Python 类 -->

<content>

<![CDATA[

class ${1:ClassName}(${2:object}):

def __init__(self, ${3:arg}):

super(${1:ClassName}, self).__init__()

self.${3:arg} = ${3:arg}

${0}

]]>

</content>

<tabTrigger>class</tabTrigger>

<description>创建一个 Python 类</description>

</snippet>

在上面的 Snippets 中,“${1:ClassName}” 表示的是 Snippets 的第一个参数,这个参数的默认值为 “ClassName”;“${2:object}” 表示的是 Snippets 的第二个参数,这个参数的默认值为 “object”;“${3:arg}” 表示的是 Snippets 的第三个参数,这个参数的默认值为 “arg”。

可以看到,在该 Snippets 中,我们通过使用参数,能够在创建 Python 类时,快速进行相关变量的声明和赋值,并在最后留下一个代码光标的位置,方便我们继续编写更多的代码。

3.3 Snippets 中的双语法

双语法功能是指,当 Snippets 中出现 {} 时,它们可以像 Python 等语言中的 {} 一样的使用,也可以被当做 Snippets 参数使用。例如,下面是一个 JavaScript 中使用双语法的 Snippets 示例:

<snippet>

<!-- 文件类型:JavaScript -->

<!-- Snippets 描述: 快速创建一个代码模块 -->

<content>

<![CDATA[

(function(${1:window}, ${2:undefined}){

${0}

}(${1:window}));

]]>

</content>

<tabTrigger>iife</tabTrigger>

<description>快速创建一个代码模块</description>

</snippet>

在该 Snippets 中,我们利用了 {} 双语法的特性,快速输出了一个自执行的立即函数表达式,并在其中定义了两个参数。

4. 总结

Sublime Text 3 的 Snippets 功能是非常强大的。学会了 Snippets 的基本创建和使用之后,我们可以进一步地运用一些小技巧和方法,来提高自己的编写效率和代码质量。

希望在日常的开发工作中,永远保持着好奇心和热情,不断学习和探索,让编写代码成为一件更加愉快和水到渠成的事情。