首页
/ Thief-Book-VSCode 项目教程

Thief-Book-VSCode 项目教程

2024-08-19 22:20:46作者:邬祺芯Juliet

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

Thief-Book-VSCode 项目的目录结构如下:

Thief-Book-VSCode/
├── .github/
│   └── workflows/
│       └── ci.yml
├── src/
│   ├── commands/
│   │   ├── nextBook.ts
│   │   ├── prevBook.ts
│   │   └── toggleBook.ts
│   ├── extension.ts
│   ├── models/
│   │   └── book.ts
│   ├── services/
│   │   └── bookService.ts
│   └── utils/
│       └── index.ts
├── .gitignore
├── package.json
├── README.md
└── tsconfig.json

目录结构介绍

  • .github/workflows/: 包含 GitHub Actions 的工作流配置文件,用于持续集成。
  • src/: 项目的源代码目录。
    • commands/: 包含插件的命令处理文件,如翻页、切换书籍等。
    • extension.ts: 插件的主入口文件。
    • models/: 包含数据模型的定义,如书籍模型。
    • services/: 包含服务层的代码,如书籍服务。
    • utils/: 包含工具函数和辅助代码。
  • .gitignore: Git 忽略文件配置。
  • package.json: 项目的依赖和脚本配置文件。
  • README.md: 项目的说明文档。
  • tsconfig.json: TypeScript 配置文件。

2. 项目的启动文件介绍

项目的启动文件是 src/extension.ts。这个文件是插件的入口点,负责初始化插件并注册命令。

启动文件介绍

import * as vscode from 'vscode';
import { registerCommands } from './commands';

export function activate(context: vscode.ExtensionContext) {
    registerCommands(context);
}

export function deactivate() {}
  • activate: 插件激活时调用的函数,负责注册命令。
  • deactivate: 插件停用时调用的函数,目前为空。

3. 项目的配置文件介绍

项目的配置文件主要是 package.jsontsconfig.json

package.json

package.json 文件包含了插件的元数据、依赖和脚本配置。

{
  "name": "thief-book-vscode",
  "displayName": "Thief Book",
  "description": "A VSCode extension to read books while coding",
  "version": "1.0.0",
  "publisher": "cteamx",
  "engines": {
    "vscode": "^1.50.0"
  },
  "categories": [
    "Other"
  ],
  "activationEvents": [
    "onCommand:thief-book.nextBook",
    "onCommand:thief-book.prevBook",
    "onCommand:thief-book.toggleBook"
  ],
  "main": "./src/extension.ts",
  "contributes": {
    "commands": [
      {
        "command": "thief-book.nextBook",
        "title": "Thief Book: Next Page"
      },
      {
        "command": "thief-book.prevBook",
        "title": "Thief Book: Previous Page"
      },
      {
        "command": "thief-book.toggleBook",
        "title": "Thief Book: Toggle Book"
      }
    ],
    "configuration": {
      "type": "object",
      "title": "Thief Book Configuration",
      "properties": {
        "thief-book.bookPath": {
          "type": "string",
          "default": "",
          "description": "Path to the book file"
        }
      }
    }
  },
  "scripts": {
    "vscode:prepublish": "npm run compile",
    "compile": "tsc -p ./",
    "watch": "tsc -watch -p ./",
    "pretest": "npm run compile && npm run lint",
    "lint": "eslint src --ext ts",
    "test": "node
登录后查看全文
热门项目推荐
相关项目推荐