基于snippets的vscode插件使用指南
基于snippets的vscode插件使用指南
本文档是关于的 vscode 中集成 code-snippets 拓展的集成指南
前言
基本所有主流编辑器都支持 snippets,也就是配置代码片段来提高开发效率,VSCode 也不例外
我们平时使用的 HTML Snippets 等插件,就是 Snippets 规则的集合。
安装
拓展-从 visx 安装
或拷贝解压文件到 .vscode/extension 下
或从应用市场直接下载 html snippets 等插件直接使用
使用示例
触发前缀 | 插入到编辑器中的内容 |
---|---|
csl | console.log(‘’) |
支持的语言
- JavaScript(.js)
- TypeScrit(.ts)
- JavaScript React(.jsx)
- etc
snippets说明
创建snippets
在 vscode 中 Ctrl+P 打开命令行
1 | >Preferences: Configure User Snippets |
即可创建项目级别的代码片段
snippets规则
规则形式如下
1 | "Print to console": { |
prefix 是触发的前缀,可以指定多个
body 是插入到编辑器中的内容,支持语法参考 body 规则
description 是描述
scope 是生效的语言,不指定的话就是所有语言都生效
在 jsx 文件下生效需指定为 javascriptreact
body 规则
- 支持通过 $1 $2 指定光标位置,且支持多个 $1 同时编辑
1 | "$1 xxxx $1" |
- 可设置默认值,或提供多值选择
1 | "appId: '${1:|appIdA,appIdB|}', pageName: '${2: defaultPageName}" |
- 可选取变量
1 | "当前文件: $TM_FILENAME", |
- 可使用正则处理数据
1 | "${TM_FILENAME/.[a-z]+$/test/i}" |
相当于
1 | ${TM_FILENAME}.replace(/.[a-z]+$/i, 'test') |
根据这些规则 即可定义新的 code snippets
vscode插件构建
项目构建
首先安装脚手架
1 | npm i yo generator-code --save |
生成 code-snippets 项目
1 | npx yo code |
在 package.json 中增加钩子
1 | "contributes": { |
在 snippets\snippets.code-snippets 中集成 snippets
1 | "intl": { |
因为脚手架已经在 .vscode\launch.json 中集成了 Extension 启动方式,在 运行和调试 中可直接运行项目
1 | "configurations": [ |
运行通过后,项目已经构建完毕
项目发布
在项目中安装打包工具
1 | npm i vsce --save |
修改 package.json 文件 增加 publisher
1 | "publisher": "chengjy03", |
修改项目 Readme.md 文件
最后打包项目
1 | npx vsce package |
即可生成对应的.vsix 文件
后续可将项目发布至 vscode 插件商店