IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 使用node开发一个解放双手的小工具《二》- vsCode插件包装 -> 正文阅读

[开发工具]使用node开发一个解放双手的小工具《二》- vsCode插件包装

作者:recommend-item-box type_blog clearfix

背景:此篇是上篇《使用node开发一个解放双手的小工具》的后续,前边遗留了一些问题,最近完善了一下。

因为发现实际使用起来,有很多的不方便:

  1. 使用上,需要配置对应的根目录,因为是需要用户手动修改config中的地址,这时目录就有可能有问题,不是根目录、路径不完整之类的。
  2. 工具本身,提交到git上,需要拉下来,然后再工具的对应目录下运行,去生成对应目录下的文件。操作起来有点奇怪。

索性直接搞成vsCode插件么,现在前端开发应该对vscode这么熟悉,它自带的插件本身使用起来就很方便。而且在vsCode中使用,也比直接运行项目看起来更优雅。

于是开始百度vsCode插件编写,《VSCode插件开发全攻略》小茗同学的这篇攻略,真的是很详细了,所以关于vsCode发布相关的东西,我这里就不详细介绍了。

目录结构

├─.eslintrc.json
├─.gitignore
├─.vscodeignore
├─CHANGELOG.md
├─extension.js
├─jsconfig.json
├─LICENSE
├─package-lock.json
├─package.json
├─README.md
├─vsc-extension-quickstart.md
├─test
|  ├─runTest.js
|  ├─suite
|  |   ├─extension.test.js
|  |   └index.js
├─src									核心替换代码
|  ├─app.js
|  ├─config.js
|  ├─package.json
|  ├─util
|  |  └index.js
|  ├─template
|  |    ├─baseRepart                  模板目录
|  ├─image
|  |   └doge.jpg

改造思路

核心代码其实已经写好了,只要vsCode相关事件能触发我的生成方法就可以了。目前是这样想的:在用户右键要生成的目录,弹出可选择的按钮,点击之后调用创建模板的函数,因为是直接选择了对应目录,所以就可以获取到目录的路径,也解决了需要手动输入路径的问题。

// extension.js
// vsCode中注册一个 createTem事件。
    let createTem = vscode.commands.registerCommand('hhcreatepage.createTem',  (uri) => {
        vscode.window.showInformationMessage(`创建模板 当前路径:${uri.path}`);
        try {
            // 调用主方法
            createTemFun(uri._fsPath)
            console.log('执行成功')
        } catch (error) {
            console.log(error)
            vscode.window.showErrorMessage(error);
        }
    });

    context.subscriptions.push(createTem);

// package.json中 配置相关菜单和点击事件
	"contributes": {
		"commands": [
			{
				"command": "hhcreatepage.createTem",
				"title": "create-template"
			}
		],
		"menus": {
			"explorer/context": [
				{
					"command": "hhcreatepage.createTem",
					"group": "z_hh-create"
				}
			]
		}
	},

其实关于vsCode的东西非常少,只是相当于在外边套了一个壳子。传入了项目路径,之后的东西还是原来的模板生成。之后,将vsCode打包并发布到应用市场就可以了,发布相关的东西,参考上边教程链接

目前问题与后续计划

  1. 目前只能要求用户知道对应的目录(src的上级目录),选中了这一级才能生效,不然还是有问题(因为没找到用代码控制菜单显示隐藏的方法)
  2. 模板还是比较单一的,并不能控制生成代码是选择哪一个模板去生成。

虽然目前功能还是比较单一,但是也解决了目前的刚需问题。后边的优化,可以慢慢搞。

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-07-24 11:42:15  更:2021-07-24 11:43:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年4日历 -2024/4/28 19:10:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码