前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >教你动手写VScode插件 - 初探

教你动手写VScode插件 - 初探

作者头像
Rice加饭
发布2022-05-10 18:15:50
1.8K0
发布2022-05-10 18:15:50
举报
文章被收录于专栏:Rice嵌入式

摘要

  • 在我之前的文章中,我使用了不同编程语言开发了如下许多上位机。

序号

内容

语言

1

《如何定制自己的HID调试助手》

C#

2

《C# 串口上位机开发》

C#

3

《Qt 串口上位机开发》

QT

4

《教你动手写UDP协议栈 - OTA上位机》

python

5

《基于RT-THREAD nano的平衡车--上位机软件》

QT

6

《R-Plan上位机》

QT

7

《BearPi TCP》

QT

  • 你会发现很零散,集成度,而且久而久之就没有维护了。今天我又来解锁一种开发工具的神器--VScode插件。
  • 其实vscode现在已经很多大厂先后开发出他们各自的插件,如:华为LiteOS Studio,RT-Thread Studio等。
  • 在这说说为什么作者会想着用VScode来写上位机的几点原因:
    1. vscode现在成为作者平时开发(编辑器),阅读代码必不可少的工具。
    2. vscode丰富的插件,它可以让你敲代码,也可以让你上班偷懒(玩游戏,看知乎 - 《教你使用vscode在上班的时候偷懒》,甚至可以让你刷题。
    3. vscode丰富的插件,对作者平时写文章也是很方便。如:Markdown编辑预览,draw.io。《draw.io-取代visio的流程图绘制工具》
    4. 一个软件多种功能(作者最喜欢了,不然每次打开几十个软件,烦死了),开发便利,而且他有很多牛X插件。
  • 接下来作者的想法是以后的上位机工具都采用vscode的插件来开发。所以vscode的上位机我会一步一步来解锁。
  • 今天这篇文章主要先简单描述vscode插件的开发流程:环境搭建-创建工程-运行测试-打包插件。

环境搭建

  1. 安装Visual Studio Code
  • 下载地址:https://code.visualstudio.com
  • 下载完,双击根据提示安装即可。
  1. 安装Node.js
  • VSCode 插件的环境搭建可以参考官方文档:https://code.visualstudio.com/api/get-started/your-first-extension
  • 根据文档说明:需要安装Node.js和GIT。
  • Node.js的下载地址:http://nodejs.cn/download/
  • 下载完,双击根据提示安装即可。
  1. 安装完上述的两个工具之后,我们还需要安装生产插件代码的工具:Yeoman和VS Code Extension generator。
  • 关于Yeoman的描述,官网链接:https://yeoman.io
  • 关于VS Code Extension generator的描述,官网链接:https://code.visualstudio.com/api/get-started/your-first-extension
  • 安装说明:打开电脑的cmd命令行工具,执行下面的命令完成Yeoman和VS Code Extension generator的工具安装。
代码语言:javascript
复制
npm install -g yo generator-code

创建工程

  1. 在cmd命令行执行如下命令,自动生成一个工程的基本代码:
代码语言:javascript
复制
yo code
  1. 从上图看出有两种编写扩展的语言:JavaScript和TypeScript。我们这里选择TypeScript。
  • TypeScript语言学习,查看如下链接:https://www.typescriptlang.org/docs/handbook/release-notes/overview.html
  1. 选择编写扩展的语言后,有3个输入三个选择:
  2. 输入你扩展的名称
  3. 输入一个标志(直接默认也可以)
  4. 输入对这个扩展的描述
  5. 是否创建一个git仓库用于版本管理
  6. 是否捆绑源代码与webpack
  7. 使用哪个包管理器(我选择npm)
  1. 上述的配置都会在工程项目中package.json文件有对应的属性来表示。
  2. 目录结构说明:
代码语言:javascript
复制
.
├── .gitignore                  //配置不需要加入版本管理的文件
├── .vscode                     // VS Code的整合
│   ├── launch.json
│   ├── settings.json
│   └── tasks.json
├── .vscodeignore               //配置不需要加入最终发布到拓展中的文件
├── README.md
├── src                         // 源文件
│   ├── extension.ts            // 如果我们使用js来开发拓展,则该文件的后缀为.js
│   └── test                    // test文件夹
│       ├── suite
│       └── runTest.ts
├── node_modules
│   ├── vscode                  // vscode对typescript的语言支持。
│   └── typescript              // TypeScript的编译器
├── package.json                // 该拓展的资源配置文件
├── tsconfig.json               //
├── typings                     // 类型定义文件夹
│   ├── node.d.ts               // 和Node.js关联的类型定义
│   └── vscode-typings.d.ts     // 和VS Code关联的类型定义
└── vsc-extension-quickstart.md

运行测试

  1. 通过VS Code打开我们刚刚创建的工程。如下图:
  1. 运行测试:可以直接按F5按钮或者点击VS Code菜单栏:运行->启动调试。会弹出一个新的vscode工作区。
  1. 测试:按ctrl+shift+p,然后输入hello word,就会弹出对应时间的内容。
  1. 这个简单的demo的关联文件:package.json和extension.ts

打包插件

  • 在我们编写完一个插件之后,总不能每次都运行代码的方式来使用插件的功能,而且如果别人也要使用你这个插件,不可能拿你的源码。vscode支持打包和发布。打包和发送:如同我们QT开发编译生成的exe文件就是打包过程,然后将这个包发布到网上,就是发布过程。
  1. 打包插件需要一个工具:vsce。在cmd命令行输入如下命令
代码语言:javascript
复制
npm install -g vsce
  1. 发布流程:需要发布到marketplace.visualstudio.com上面去。发布成功后可以在vscode里面用ext install来安装这个插件。发布还需要去配置一个token,然后这个token还找个地方记住,还会过期,而且在发布过程中还得祈祷网络好。所以在这里我就不写发布的流程。发布的命令如下,在cmd命令行输入。
代码语言:javascript
复制
vsce publish
  1. 打包流程:打包的最终结果是一个.vsix的插件包,可以通过vscode手动添加插件安装,也可以通过marketplace分享自己的插件。
  • marketplace链接:https://marketplace.visualstudio.com/manage/createpublisher?managePageRedirect=true
  • 打包的命令如下,在cmd命令行输入。
代码语言:javascript
复制
vsce package
  1. 不过打包之前需要修改两个地方。
  • ① 在package.json文件中增加publisher属性。
  • 注:如果不输入上述属性,打包时会出现如下图错误:
  • ② 修改README.md,删除原有的内容,写上自己的内容。
  • 注:如果不修改,打包时会出现如下图错误:
  1. 执行上述的打包命令,如下图插件打包成功。

手动添加插件

  • 选择打包好后的插件包:rice-vsca-0.0.1.vsix
  • 安装完之后会显示在插件已安装的目录中:

运行测试插件包

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-06-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Rice 嵌入式开发技术分享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 摘要
  • 环境搭建
  • 创建工程
  • 运行测试
  • 打包插件
  • 手动添加插件
  • 运行测试插件包
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档