VSCode 中自定义代码模板(snippet)
这个功能在VS code 中被叫做片段(snippet),其功能是在输入用户定义好的触发词后,可以像代码补全一样补出一段代码。
具体操作倒也不难,如下:
1.打开VS code,选择文件 => 首选项 => 用户片段 =>选择对应的语言
在弹出的以下窗口中选择对应的语言、文件夹或全局,则,仅会在该语言环境、该文件夹抑或全局触发补全该代码片段。此处我以C++为例了。
2.输入代码
在弹出的窗口中,你能看到已经有数行注释如下
1 | // Place your snippets for cpp here. Each snippet is defined under a snippet name and has a prefix, body and |
事实上这段英语教程已经说得比较清楚,但是作为英语苦手,还是有一定的理解苦难,这就是这篇博文诞生的原因。下做翻译补充:
每一个“代码片段”都应该由如下三部分构成,前缀(prefix)、主干和描述。
前缀是代码片段的触发器,当你在编辑代码时输入前缀(的部分),VS code 就会联想到你的对应代码片段;
主干是被补全的内容,也就是“模板”部分。你应该把代码分行写在 body 的中括号内,并把它们用双引号包括起来,同时在引号外别忘了添加逗号。即
1 | "your code here;", |
描述被用来描述代码片段的作用,当你有多个相近名字的代码片段时,这无疑有助于你区分它们。此外,这部分也允许你输入中文,或干脆不写(尽管不建议)。
需要额外注意的是最后提到的由 $ 开头的这个小功能。
它的写法是 $加一个数字或在 $ 后的大括号内依次写入”数字”“冒号”和“占位字符串”。如
1 | $0 |
在补全代码后,你的光标会首先停在数值最小的一个 $ 字符处,随后每次按 Tab 依次停在次小的 $ 处,最后停在代码片段的末尾或你指定的 $0 处。(尽管测试下来允许数字不连贯,但是我建议还是使用连贯的从1开始的数字比较好)。如果有多个相同数字的地方,那么光标会同时存在于这些地方。
在上方 spaceholder 部分,你可以填入默认的代码,它们在会光标(按 Tab 转移到此处时被选中以备替换)。
3. 实例
接下啦,仿照给出的 Example 在下方输入你的代码即可。
1 | {//这个括号是默认生成的 |
@import “D:\Users\uftx\Documents\hexo\source_posts\avatar.jpg”