在VS Code中使用Snippet Craft扩展提高编码效率

Snippet Craft

一个VS Code代码片段管理插件

功能

创建和插入代码片段

在编辑器区域右键菜单中点击插入Snippet,或在代码片段视图中点击条目,则会将代码片段插入到当前激活文档的光标位置。

代码片段编辑

代码片段在左侧栏中,根据创建时的文件内容类型,分组显示代码片段,可编辑已有的代码片段。

代码片段预览

鼠标移动到代码片段条目上时,显示tooltip预览

默认映射

映射是插入代码片段时,自动替换的变量。

代码片段中通过设置占位符${VAR_NAME},在插入代码片段时,将自动替换为全局变量中的值。可用的映射如下表:

类别 变量 描述
文件和编辑器相关 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 月份的全名(例如"July")
CURRENT_MONTH_NAME_SHORT 月份的简短名称(例如"Jul")
CURRENT_DATE 以两位数字表示的月份中的某一天(例如"08")
CURRENT_DAY_NAME 日期的名称(例如"星期一")
CURRENT_DAY_NAME_SHORT 当天的简短名称(例如"Mon")
CURRENT_HOUR24 小时制格式的当前小时
CURRENT_MINUTE 两位数的当前分钟数
CURRENT_SECOND 当前秒数为两位数
CURRENT_SECONDS_UNIX 自 Unix 纪元以来的秒数
CURRENT_TIMEZONE_OFFSET 当前 UTC 时区偏移量为 +HH 或者 -HH (例如"-07:00")
其他 RANDOM6 6 个随机 Base-10 数字
RANDOM_HEX6 6 个随机 Base-16 数字
UUID 第四版UUID

注意:当自定义映射值未设置或者不可用时,将直接显示变量占位符

自定义映射

扩展初始化时,插入了三个常用的自定义映射,你可以自由更改或添加自定义映射。

示例:

代码片段内容

复制代码
value of 'AUTHOR' is: ${AUTHOR}
value of 'COMPANY' is: ${COMPANY}
value of 'MAIL' is: ${MAIL}
value of 'FOOBAR' (non-exist) is: ${FOOBAR}

插入代码片段后,显示如下:

复制代码
value of 'AUTHOR' is: 林晓lx
value of 'COMPANY' is: my-company
value of 'MAIL' is: jevonsflash@qq.com
value of 'FOOBAR' (non-exist) is: ${FOOBAR}

与自定义映射一样,当默认映射值未设置或者不可用时,将直接显示变量占位符

自动完成

代码片段可在编辑器中显示自动提示和补全内容。

快速开始

通过点击上方横幅上的安装按钮安装 Snippet Craft,或在 VS Code 的扩展侧边栏中搜索 Snippet Craft 进行安装。

更新内容

Date Version Content
V0.1.0 2024-8-22 初始版本

Todo

  • 支持更多语言
  • 使用monaco-editor
  • 导入导出功能

作者信息

作者:林小

邮箱:jevonsflash@qq.com

License

The MIT License (MIT)

项目地址

Github:snippet-craft

相关推荐
gc_22993 天前
使用VS Code终端创建Vue项目报错:“npm : 无法加载文件 ...\npm.ps1,因为在此系统上禁止运行脚本”
vue·vs code
formulahendry3 天前
为什么全世界都在 Fork 它?VS Code 官方纪录片(中字完整版)正式上线!
微软·visual studio code·vs code
十@八九5 天前
VS Code 接入 AMD Vivado 2026.1 AI 助手:从 VSIX 到 MCP 实战
人工智能·fpga·vs code·vivado·mcp
formulahendry10 天前
在 VS Code 里自由切换 Copilot、Claude、Codex、OpenCode、Pi、Kimi、Qwen:任何 Agent 都能接
visual studio code·vs code·acp
Vex2une16 天前
PowerShell 发展史:从命令行外壳到跨平台自动化引擎
windows·自动化·azure·powershell·vs code·脚本语言·dsc
AI大模型-小华17 天前
AI 编程进入深度开发阶段:什么时候普通方案不够,需要更高算力支持?
人工智能·chatgpt·ai编程·vs code·codex·codex cli
GPU实战笔记20 天前
云端写 Python:JupyterLab 和 VS Code Remote-SSH,按工作方式选
python·vs code·jupyterlab·remote-ssh·远程开发·云端开发
阿钱真强道1 个月前
课时00 嵌入式技术应用设计实训 | 开发环境搭建与开发板认识
git·hal库·keil·vs code·开发环境搭建·stm32f103·st-link
漂着的圆木1 个月前
模型:VS Code启用HydraFusion编排器配置与限制
vs code·github copilot·hydrafusion·运行时模型编排器·配置排查
狂奔的sherry1 个月前
VS Code Remote SSH Markdown 预览白屏排障
markdown·vs code·remote ssh