Vetur 项目教程

Vetur 项目教程

vetur项目地址:https://gitcode.com/gh_mirrors/vet/vetur

1. 项目的目录结构及介绍

Vetur 是一个为 VS Code 提供 Vue 工具的扩展。以下是 Vetur 项目的主要目录结构及其介绍:

vetur/
├── client/                # VS Code 客户端代码
├── server/                # Vue Language Server 代码
├── scripts/               # 脚本文件,用于构建和测试
├── syntaxes/              # 语法高亮定义
├── tools/                 # 工具代码
├── typings/               # TypeScript 类型定义
├── package.json           # 项目配置文件
├── README.md              # 项目说明文档
└── CONTRIBUTING.md        # 贡献指南
  • client/:包含 VS Code 扩展的客户端代码,负责与 VS Code 集成。
  • server/:包含 Vue Language Server 的代码,提供语言服务功能。
  • scripts/:包含用于构建、测试和发布的脚本。
  • syntaxes/:定义 Vue 文件的语法高亮规则。
  • tools/:包含一些辅助工具和脚本。
  • typings/:包含 TypeScript 类型定义文件。
  • package.json:项目的配置文件,定义依赖、脚本和其他元数据。
  • README.md:项目的说明文档,提供项目概述和使用指南。
  • CONTRIBUTING.md:贡献指南,指导开发者如何参与项目。

2. 项目的启动文件介绍

Vetur 项目的启动文件主要位于 client/ 目录下,负责启动 Vue Language Server 并集成到 VS Code 中。以下是主要的启动文件:

  • client/src/extension.ts:这是 Vetur 扩展的主入口文件,负责初始化并启动 Vue Language Server。
import * as path from 'path';
import { workspace, ExtensionContext } from 'vscode';
import { LanguageClient, LanguageClientOptions, ServerOptions, TransportKind } from 'vscode-languageclient/node';

let client: LanguageClient;

export function activate(context: ExtensionContext) {
  // 服务器路径
  const serverModule = context.asAbsolutePath(path.join('server', 'out', 'vueServerMain.js'));
  // 服务器选项
  const serverOptions: ServerOptions = {
    run: { module: serverModule, transport: TransportKind.ipc },
    debug: { module: serverModule, transport: TransportKind.ipc, options: { execArgv: ['--nolazy', '--inspect=6009'] } }
  };

  // 客户端选项
  const clientOptions: LanguageClientOptions = {
    documentSelector: [{ scheme: 'file', language: 'vue' }],
    synchronize: {
      fileEvents: workspace.createFileSystemWatcher('**/.clientrc')
    }
  };

  // 创建语言客户端并启动服务器
  client = new LanguageClient('vue', 'Vue Language Server', serverOptions, clientOptions);
  client.start();
}

export function deactivate(): Thenable<void> | undefined {
  if (!client) {
    return undefined;
  }
  return client.stop();
}

3. 项目的配置文件介绍

Vetur 项目的主要配置文件是 package.json,它定义了项目的依赖、脚本和其他元数据。以下是 package.json 的主要内容:

{
  "name": "vetur",
  "displayName": "Vetur",
  "version": "0.35.0",
  "description": "Vue tooling for VS Code",
  "author": "Pine Wu <octref@gmail.com>",
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/octref/vetur.git"
  },
  "engines": {
    "vscode": "^1.30.0"
  },
  "categories": [
    "Programming Languages",
    "Linters",
    "Formatters",
    "Snippets"
  ],
  "activationEvents": [
    "onLanguage:vue"
  ],
  "main": "./client/out/extension",
  "contributes": {
    "configuration": {
      "type": "object",
      "title": "Vetur",
      "properties": {

vetur项目地址:https://gitcode.com/gh_mirrors/vet/vetur

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

魏献源Searcher

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值