手把手教你写Sublime中的Snippet 效果图

参考教程 手把手教你写Sublime中的Snippet
针对其中的几个格式,列出代码和对应的效果图方便理解

1. snippet环境变量

<snippet>
    <content><![CDATA[
=================================
$TM_FILENAME   编写中的文件名,含后缀名
$TM_FILEPATH   编写中的文件全路径
$TM_LINE_INDEX   插入点在该行中的第几列
$TM_LINE_NUMBER   插入点在文件中的第几行
=================================
]]></content>

    <!-- 代码提示 -->
    <tabTrigger>sample</tabTrigger>
    <!-- 以什么后缀名结尾的文件里可使用这个代码段 -->
    <scope>source.lua</scope>
</snippet>

环境变量

2. snippet Fields

<snippet>
    <content><![CDATA[
=================================
开始输入点: $1
按下tab键后跳到这: $2
可以跟上面同时编辑: $2
=================================
]]></content>

    <!-- 代码提示 -->
    <tabTrigger>sample</tabTrigger>
    <!-- 以什么后缀名结尾的文件里可使用这个代码段 -->
    <scope>source.lua</scope>
</snippet>
  • 开始时界面
    开始时界面
  • 按下Tab
    按下tab后

3. snippet Placeholders

<snippet>
    <content><![CDATA[
=================================
可以设置默认值: ${1:默认文字}
后面相同的变量都会有这个默认值: $1
并且可以统一修改: $1
可以设置环境变量为默认值: ${2:$TM_FILENAME}
=================================
]]></content>

    <!-- 代码提示 -->
    <tabTrigger>sample</tabTrigger>
    <!-- 以什么后缀名结尾的文件里可使用这个代码段 -->
    <scope>source.lua</scope>
</snippet>

默认值

4. snippet Substitutions

这个在文章中没有详细描述,可以查看官方文档

使用以下两种格式可以用正则表达式替换变量中的值

  • ${变量名/正则表达式/替换的格式/}
  • ${变量名/正则表达式/替换的格式/可选参数}
    可选参数如下
    • i
      不区分大小写
    • g
      匹配到的都替换
    • m
      多行模式
<!-- 示例1 -->
<snippet>
    <content><![CDATA[
=======================================================
设置变量初始值:                ${1:default value DEFAULT_VALUE}
替换第一个e为^:               ${1/e/^/}
使用参数g替换所有小写e为^:         ${1/e/^/g}
使用参数ig替换所有大小写e为^:   ${1/e/^/ig}
替换所有字符为^:               ${1/./^/g}
=======================================================
]]></content>

    <!-- 代码提示 -->
    <tabTrigger>sample</tabTrigger>
    <!-- 以什么后缀名结尾的文件里可使用这个代码段 -->
    <scope>source.lua</scope>
</snippet>

示例1结果

<!-- 示例2 -->
<snippet>
    <content><![CDATA[
=======================================================
变量名可以是环境变量:     $TM_FILENAME
可以用正则表达式的匹配结果作为替换
无后缀的文件名:        ${TM_FILENAME/^(\w+)\.(\w+)$/$1/}
文件后缀名:          ${TM_FILENAME/(\w+)\.(\w+)$/$2/}
=======================================================
]]></content>

    <!-- 代码提示 -->
    <tabTrigger>sample</tabTrigger>
    <!-- 以什么后缀名结尾的文件里可使用这个代码段 -->
    <scope>source.lua</scope>
</snippet>

示例2

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lyzz0612

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值