设置代码片段
{
"HEADER": {
"prefix": "header",
"body": [
"#!/usr/bin/env python",
"# -*- encoding: utf-8 -*-",
"'''",
"@文件 :$TM_FILENAME",
"@创建 :$CURRENT_YEAR年$CURRENT_MONTH月$CURRENT_DATE日 $CURRENT_HOUR:$CURRENT_MINUTE:$CURRENT_SECOND",
"@A作者 :newtekboy",
"@版本 :1.0",
"@描述 :$1",
"'''",
"$0"
],
"discription": "python的头部模板"
}
}
键
- prefix:代码片段的名称
- body:文本内容
- description:描述
Tab的顺序
$1...$0:这是你代码快捷生成之后鼠标光标的所在位置,光标会首先定位在$1,按Tab键切换到$2的位置,以此类推,光标最后会定位在$0的位置。
占位符
占位符是带有值的制表符,如 .将插入并选择占位符文本,以便可以轻松更改。说白了占位符${1:foo}就是在$1的基础上,光标跳到$1位置的同时会自动生成并选中foo,同样按Tab键切换到$2的位置。占位符可以嵌套,如 。
${1:foo}${1:another ${2:placeholder}}
选择
${1|one,two,three|}
变量
插入变量的值。如果未设置变量,则插入其默认值或空字符串。当变量未知(即未定义其名称)时,将插入变量的名称并将其转换为占位符。
$name${name:default}
可以使用以下变量:
路径及内容
变量名称 | 描述 |
---|---|
TM_SELECTED_TEXT | 当前选定的文本或空字符串 |
TM_CURRENT_LINE | 当前行的内容 |
TM_CURRENT_WORD | 光标下的单词内容或空字符串 |
TM_LINE_INDEX | 基于零索引的行号 |
TM_LINE_NUMBER | 基于一索引的行号 |
TM_FILENAME | 当前文档的文件名 |
TM_FILENAME_BASE | 不带扩展名的当前文档的文件名 |
TM_DIRECTORY | 当前文档的目录 |
TM_FILEPATH | 当前文档的完整文件路径 |
RELATIVE_FILEPATH | 当前文档相对于打开的工作区或文件夹的相对文件路径 |
CLIPBOARD | 剪贴板的内容 |
WORKSPACE_NAME | 打开的工作区或文件夹的名称 |
WORKSPACE_FOLDER | 打开的工作区或文件夹的路径 |
CURSOR_INDEX | 基于零索引的光标位置 |
CURSOR_NUMBER | 基于一索引的光标位置 |
时间
变量名称 | 描述 |
---|---|
CURRENT_YEAR | 本年度 |
CURRENT_YEAR_SHORT | 本年度的最后两位数 |
CURRENT_MONTH | 以两位数字表示的月份(例如“02”) |
CURRENT_MONTH_NAME | 月份的全名(例如“七月”) |
CURRENT_MONTH_NAME_SHORT | 月份的短名称(例如“Jul”) |
CURRENT_DATE | 以两位数字表示的月份中的某一天(例如“08”) |
CURRENT_DAY_NAME | 日期的名称(例如“星期一”) |
CURRENT_DAY_NAME_SHORT | 日期的短名称(例如“Mon”) |
CURRENT_HOUR | 24小时制格式的当前小时 |
CURRENT_MINUTE | 当前分钟为两位数 |
CURRENT_SECOND | 当前第二位为两位数 |
CURRENT_SECONDS_UNIX | 自 Unix 纪元以来的秒数 |
CURRENT_TIMEZONE_OFFSET | 当前UTC时区偏移量(例如“+HH:MM”或“-HH:MM”) |
随机值
变量名称 | 描述 |
---|---|
RANDOM | 6个随机的Base-10数字 |
RANDOM_HEX | 6个随机的Base-16数字 |
UUID | 一个版本4的UUID |
对于插入行或块注释,遵循当前语言的语法:
变量名称 | 描述 | 示例输出 |
---|---|---|
BLOCK_COMMENT_START | 插入块注释开始标记,遵循当前语言的语法 | PHP或HTML中的/*<!-- |
BLOCK_COMMENT_END | 插入块注释结束标记,遵循当前语言的语法 | PHP或HTML中的-->*/ |
LINE_COMMENT | 插入行注释,遵循当前语言的语法 | PHP中的// |