Sublime Text-Snippet的使用

文章最初发表于szhshp的第三边境研究所
转载请注明

Sublime Snippet

从大二开始就一直使用Sublime Text到现在,各方面都还满意,也尝试过使用Atom和其他的IDE依然感觉没有ST顺手。

正常情况插件里面已经包含了所有你需要的Snippet,但是偶尔会有没有插件里面没有覆盖到的部分。

然后日常开发一直在用某偏门语言(ノ▼Д▼)ノ,并且几年前对应的扩展插件就已经停止维护了,因此很多的关键字都没能进行Snippet引用。

怎么办?

废话!自己写!

新建Snippet

首先新建一个Snippet: 菜单->Tools->Developer->New Snippet...

然后会获得一段代码:

<snippet>
    <content><![CDATA[Type your snippet here]]></content>
    <!-- Optional: Tab trigger to activate the snippet -->
    <tabTrigger>hello</tabTrigger>
    <!-- Optional: Scope the tab trigger will be active in -->
    <scope>source.python</scope>
    <!-- Optional: Description to show in the menu -->
    <description>My Fancy Snippet</description>
</snippet>

这里包含4个部分:

  • content:

    其中必须包含<![CDATA[…]]>,否则无法工作, Type your snippet here用来写你自己的代码片段

    注意里面一些特殊字符可能需要使用转义符号

  • tabTrigger:

    用来引发代码片段的字符或者字符串, 比如在以上例子上, 在编辑窗口输入hello然后按下tab就会在编辑器输出Type your snippet here这段代码片段

  • scope:

    表示你的代码片段会在那种语言环境下激活, 比如上面代码定义了source.python, 意思是这段代码片段会在python语言环境下激活.

    • description :

      展示代码片段的描述, 如果不写的话, 默认使用代码片段的文件名作为描述

环境变量

点击这里查看所有环境变量列表

将环境变量插入content中就会输出对应的值:

=================================
USER NAME:          $TM_FULLNAME
FILE NAME:          $TM_FILENAME
 TAB SIZE:          $TM_TAB_SIZE
SOFT TABS:          $TM_SOFT_TABS
=================================

# Output:
=============================
USER NAME:          guillermo
FILE NAME:          test.txt
 TAB SIZE:          4
SOFT TABS:          YES
=============================

Fields

当你输入一段snippet的时候,可能里面有一些参数需要手动输入,设置Filed就是为了方便后续参数的输入

content中输入下方代码,然后使用这段Snippet的时候,就可以通过Tab键对下方编号位置的文字进行快速输入

=================================
First Name: $1
Second Name: $2
Address: $3
=================================

Mirror Fields

可以将对应编号改为相同的,这样可以快速选中多个位置并且输入相同的字符

=================================
First Name: $1
Second Name: $1
Address: $1
=================================

Placeholder

没啥好说的,就是给一些地方设置默认值

=================================
First Name: ${1:Guillermo}
Second Name: ${2:López}
Address: ${3:Main Street 1234}
User name: $1
Environment Variable : ${4:$TM_FILEPATH }  #可以设置默认占位符为环境变量
Test: ${5:Nested ${6:Placeholder}}
=================================

Substitutions

某种类型的字符转换

在content中使用以下格式的段落可以实现对字符串的转换:

${var_name/regex/format_string/}
${var_name/regex/format_string/options}

下方是一个例子:

        Original: ${1:Hey, Joe!}
        Transformation: ${1/./=/g}

        # Output:
        Original: Hey, Joe!
        Transformation: =========

其中定义了两个mirror fields并且第一个field的默认值为 Hey, Joe!然后第二个被表达式转换成了多个等于号

相关转换参考: Boost library documentation for regular expressions

scope

可以从 : 菜单->Tools->Developer->Show Scope Name 中查看到需要操作的 Scope

参考文献

时间: 2024-12-05 05:44:15

Sublime Text-Snippet的使用的相关文章

Sublime Text 转

距第一篇的开箱水文,已经有4个月的时间了,但因为懒,就没有下文了.终于,今天,我觉得写一篇准技术文章了. 忘记了是怎么开始用的ST,应该是在网上看到别人推荐才用到吧,用了有半年了.在windows下是绝对的神器,Notepad++之类的无可比拟:linux下,因为有个vim,鄙人对vim不懂,所以孰好孰更好,不好说.总结起来就是,神器一般的轻量级的面向php.python等开发者的文本编辑器,相当灰常不错,推荐给你. 我主要用它来写PHP,真是相当的好用.在写python方面可能也挺好用:写ru

Sublime Text 3 绝对神器

Sublime Text 3 绝对神器 2014-01-18 22:10:15cnblogs.com-bananaplan-点击数:21535 距第一篇的开箱水文,已经有4个月的时间了,但因为懒,就没有下文了.终于,今天,我觉得写一篇准技术文章了. 忘记了是怎么开始用的ST,应该是在网上看到别人推荐才用到吧,用了有半年了.在windows下是绝对的神器,Notepad++之类的无可比拟:linux下,因为有个vim,鄙人对vim不懂,所以孰好孰更好,不好说.总结起来就是,神器一般的轻量级的面向p

sublime text 之snippet功能的使用

sublime text 小巧而功能强大,有着好看的外观,被誉为世界上最“性感”的IDE.sublime text也是本小白在最近的学习和做项目当中最常使用的IDE.小巧且功能强大,对于开发前端以及小型项目来说绰绰有余. 但对于诸多功能,本白也是通过网上的一些大神笔记以及官网上的一些功能才了解并使用到的.最近习得的功能中,其中一个叫snippet的小功能让人觉得很有意思.于是乎,本白决定以此文记录一下使用的过程,以便不时之需. 以下进入正文: 安装sass snippet插件 (支持该功能的插件

Sublime Text 3自定义snippet

Sublime Text支持自定义代码段,方法很简单,但是很有用,一个关键词,按一下tab,一大段代码就出来了. 1.菜单 Tools -> New Snippet... 2.这时会有一个模板文件,修改就可以了. <snippet> <content><![CDATA[ Hello, ${1:this} is a ${2:snippet}. ]]></content> <!-- Optional: Set a tabTrigger to defi

sublime text 3 添加 javascript 代码片段 ( snippet )

例如:新建console.log();的快捷键为 co 环境:windows 7 step1: Tools -> New Snippet 1 <snippet> 2 <content><![CDATA[consloe.log(${1:this});]]></content> 3 <!-- Optional: Set a tabTrigger to define how to trigger the snippet --> 4 <tab

Sublime Text自定义snippet

Sublime Text自定义snippet snippet可以理解为代码片段, 在自定义好snippet后就可以快带生成相应的代码片段 安装sass snippet插件 (支持该功能的插件,sublime 2和3都可以使用该功能) 查看snippet功能是否可用 新建一个html文件,按ctrl+shift+p 后输入snippet,看是否有相应的snippet字段.如果有,则表示snippet可正常使用 查看对应文件的scope snippet功能通过键入关键词后按tab完成代码不全,但是很

Sublime Text 2 配置手册

Preferences.sublime-settings文件: // While you can edit this file, it’s best to put your changes in // “User/Preferences.sublime-settings”, which overrides the settings in here. // // Settings may also be placed in file type specific options files, for

Sublime Text 全程指南

安装(Installation) Sublime Text 官方网站 提供了Sublime Text各系统各版本的下载,目前Sublime Text的最新版本是 Sublime Text 3 .这里以Windows版本的Sublime Text安装为例. 注意在安装时勾选 Add to explorer context menu ,这样在右键单击文件时就可以直接使用Sublime Text打开. 添加Sublime Text到环境变量 使用 Win + R 运行 sysdm.cpl 打开"系统属

Sublime Text 3 Build 3065 All System CracKed By Hmily[LCG]

Sublime Text 3 Build 3065 All System CracKed By Hmily[LCG] <ignore_js_op> 程序员文本编辑器 Sublime Text 3 Build 3065 全平台破解版,windows 32 bit or 64 bit.Ubuntu 32 bit or 64 bit.OS X全部支持. Sublime Text 是一个轻量.简洁.高效.跨平台的编辑器.Sublime Text 的特色功能:良好的扩展功能,官方称之为安装包(Packa

Sublime Text Snippets(代码片段)功能

我们在编写代码的时候,总会遇到一些需要反复使用的代码片段.这时候就需要反复的复制和黏贴,大大影响效率.我们利用Sublime Text的snippet功能,就能很好的解决这一问题.通俗的讲,就是把我们常用的代码分别保存起啦,然后通过插件的形式来反复调用. 创建方法:Tools > New Snippet 这时你会看到如下示例代码: 1 <snippet> 2 <content><![CDATA[ 3 Hello, ${1:this} is a ${2:snippet}.