背景

visual studio code编辑器强大在于可以自己扩展插件,不仅可以去插件市场下载,也可以按照官方的API很方便的制作适合自己的插件;

自己最近在开发一个手机端网站项目,基于vant项目,想利用vscode的智能提示补全代码,提高下开发效率,于是学习了下代码片段(snippets)的插件开发;

编写

  1. 在vscode编辑器中选择【用户代码片段】->选择当前项目中创建



会创建一个新的文件

  1. 创建新的 代码片段文件
{
"vantpage": {
// "scope": "javascript,typescript",
"prefix": "svantpl",
"body": [
"<template>",
"\t<div>",
"\t</div>",
"</template>",
"\r<script lang=\"ts\">",
"import { Component, Vue, Prop } from 'vue-property-decorator';",
"import { Row, Col, Cell, CellGroup } from 'vant';",
"@Component({",
"\t name: '${1}',",
"\t components: {",
"\t\t [Row.name]: Row,",
"\t\t [Col.name]: Col,",
"\t\t [Cell.name]: Cell,",
"\t\t [CellGroup.name]: CellGroup",
"\t }",
"})",
"export default class ${1} extends Vue {",
"\t created() {",
"",
"\t }",
"}",
"</script>",
"\r<style lang=\"scss\">",
"</style>",
],
"description": "vant typescript template",
}
}

其中prefix表示提示字符串的前缀 当键入 svantpl的时候 会提示补全代码信息;

body表示补全代码的内容;${1}表示代码补充完后,输入光标的位置;

description表示方法的提示;

在vue文件中输入

svant 就会提示以下代码,回车后即可补全代码

到这里基本就可以使用了,如果是新项目,那就得带着这个文件,比较麻烦,这时候可以选择打包该扩展插件,上传至vscode扩展市场,以后只需要下载安装即可,也可供他人使用。

写成插件项目

单个文件是无法打包的,需要写成项目文件,结构如下:

其中 vsix文件是打包生成的文件

发布扩展:

vsce

是“ Visual Studio代码扩展”的简称,是用于打包,发布和管理VS代码扩展的命令行工具。

安装

确保已安装Node.js。然后运行:

npm install -g vsce

用法

您可以vsce用来轻松打包和发布扩展程序:

$ cd myExtension
$ vsce package
# 生成vsix安装包 myExtension.vsix
$ vsce publish
# 发布插件到 VS Code 扩展市场

vsce也可以搜索,检索元数据和取消发布扩展名。运行vsce --help 可查vsce命令

通过市场的web界面发布扩展

  1. 注册扩展市场开发者账号
  2. 创建完后选择上传刚才打包成功的vsix文件



也可以通过该管理界面更新、删除包;

  1. 上传完后即可在插件市场搜索查看

最后

github地址

visual studio code开发代码片段扩展插件的更多相关文章

  1. Mac上使用Visual Studio Code开发/调试.NET Core代码

    Mac上使用Visual Studio Code开发/调试.NET Core代码 .Net Core 1.0终于发布了,Core的一大卖点就是跨平台.这个跨平台不只是跨平台运行,而且可以跨平台开发.今 ...

  2. 【实验手册】使用Visual Studio Code 开发.NET Core应用程序

    .NET Core with Visual Studio Code 目录 概述... 2 先决条件... 2 练习1: 安装和配置.NET Core以及Visual Studio Code 扩展... ...

  3. 使用Visual Studio Code开发.NET Core看这篇就够了

    作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9926078.html 在本文中,我将带着大家一步一步的通过图文的形式来演示如何在Visual Studi ...

  4. 使用Visual Studio Code开发(编译、调试)C++程序

    总体安装步骤 安装VSC(Visual Studio Code). 安装C/C++编译器(如MinGW-w64),然后配置好环境变量.//完成这步即可在VSC的终端(命令行)下编译.运行.cpp程序了 ...

  5. 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(一)-- 起步

    本文记录了在Windows环境下安装Visual Studio Code开发工具..Net Core 1.0 SDK和开发一个简单的Web-Demo网站的全过程. 一.安装Visual Studio ...

  6. 打造TypeScript的Visual Studio Code开发环境

    打造TypeScript的Visual Studio Code开发环境 本文转自:https://zhuanlan.zhihu.com/p/21611724 作者: 2gua TypeScript是由 ...

  7. 初识Visual Studio Code 一.使用Visual Studio Code 开发C# 控制台程序

    原文:初识Visual Studio Code 一.使用Visual Studio Code 开发C# 控制台程序 1. 安装.NET Core 安装包下载地址:https://www.microso ...

  8. 使用Visual Studio Code 开发 ESP8266

    使用Visual Studio Code 开发 ESP8266 ESP8266+ArduinoIDE+VSCode开发ESP8266. 首先说明一下ESP8266并不是某一WiFi模块的名字(我以前是 ...

  9. [Tool] 使用Visual Studio Code开发TypeScript

    [Tool] 使用Visual Studio Code开发TypeScript 注意 依照本篇操作步骤实作,就可以在「Windows」.「OS X」操作系统上,使用Visual Studio Code ...

随机推荐

  1. Bootstrap——面包屑导航(Breadcrumbs)

    面包屑导航(Breadcrumbs)是一种基于网站层次信息的显示方式. Bootstrap 中的面包屑导航(Breadcrumbs)是一个简单的带有 .breadcrumb 类的无序列表. <o ...

  2. objc反汇编分析,block函数块为何物?

    上一篇向大家介绍了__block变量的反汇编和它的伪代码,本篇函数块block,通常定义成原型(^){},它在反汇编中是什么东西. 我们先定义将要反汇编的例子,为减少篇幅例子采用non-arc环境. ...

  3. &#128293;《手把手》系列基础篇之2-python+ selenium-打开和关闭浏览器(详细)

    1. 简介 本节介绍如何初始化一个webdriver实例对象driver,然后打开和关闭firefox浏览器.要用selenium打开fiefox浏览器.首先需要去下载一个driver插件geckod ...

  4. WebSocket网络通信协议

    WebSocket 协议在2008年诞生,2011年成为国际标准.所有浏览器都已经支持了. HTTP 协议有一个缺陷:通信只能由客户端发起.这种单向请求的特点,注定了如果服务器有连续的状态变化,客户端 ...

  5. RabbitMQ的入门学习

    RabbitMq消息队列 参考:https://blog.csdn.net/hellozpc/article/details/81436980 什么是消息队列 MQ :message Queue ,实 ...

  6. 两步搞定Activity的向右滑动返回的功能

    向右滑动返回,对于屏幕过大的手机来说,在单手操作时,是一个不错的用户体验,用户不必再费力的或者用另一个手去点击屏幕左上角的返回按钮或者,手机右下角的返回按钮,轻轻向右滑动屏幕即可返回上一页,这个功能如 ...

  7. 【Elasticsearch 7 探索之路】(四)Analyzer 分析

    上一篇,什么是倒排索引以及原理是什么.本篇讲解 Analyzer,了解 Analyzer 是什么 ,分词器是什么,以及 Elasticsearch 内置的分词器,最后再讲解中文分词是怎么做的. 一.A ...

  8. 2019-11-20:xss学习笔记

    xxe漏洞防御使用开发语言提供的禁用外部实体的方法phplibxml_disable_entity_loader(true); 卢兰奇对象模型,bom由于现代浏览器实现了js交互性方面的相同方法和属性 ...

  9. 新闻实时分析系统 Spark2.X集群运行模式

    1.几种运行模式介绍 Spark几种运行模式: 1)Local 2)Standalone 3)Yarn 4)Mesos 下载IDEA并安装,可以百度一下免费文档. 2.spark Standalone ...

  10. no matches for kind "Deployment" in version "extensions/v1beta1"

    0x00 Problem [root@k8sm90 demo]# kubectl create -f tomcat-deployment.yaml error: unable to recognize ...