Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>火山表格源码预览器New to Visual Studio Code? Get it now.
火山表格源码预览器

火山表格源码预览器

voldp-yobdm

|
6 installs
| (0) | Free
在 VSCode 中预览火山 wsv 源码文件,提供表格化的代码可视化效果
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

火山表格源码预览器 (Volcano WSV Preview)

在 VSCode 中预览火山 wsv 源码文件,提供表格化的代码可视化效果,与火山 IDE 中的显示效果一致。

🌋 火山官方网站:www.voldp.com | 社区论坛:bbs.voldp.com

功能特性

  • 表格化预览:将火山 wsv 源码解析为结构化表格,包含包、类、成员变量、常量、方法等节点
  • 语法高亮:支持关键字、字符串、注释等语法高亮
  • 折叠/展开:支持节点折叠和展开,方便浏览大型文件
  • 复制源码:一键复制原始源码到剪贴板
  • 自动预览:支持打开 .wsv 文件时自动显示预览(可在设置中开启)
  • 右键菜单:在编辑器或资源管理器中右键即可预览
  • 快捷键支持:Ctrl+Shift+V 预览,Ctrl+K V 侧边预览
  • UTF-8 编码:使用 UTF-8 编码读取文件
  • 跨平台:支持 Windows、macOS 和 Linux

安装

方式一:从 .vsix 文件安装

或在 VSCode 中:

  1. 打开扩展面板 (Ctrl+Shift+X)
  2. 点击右上角 ... 菜单
  3. 选择「从 VSIX 安装」
  4. 选择 .vsix 文件

使用方法

  1. 打开任意 .wsv 文件
  2. 通过以下方式触发预览:
    • 快捷键:Ctrl+Shift+V(当前面板预览)或 Ctrl+K V(侧边预览)
    • 命令面板:Ctrl+Shift+P 输入「火山: 预览源码」
    • 右键菜单:在编辑器或资源管理器中右键选择「火山: 预览源码」
    • 编辑器标题栏:点击预览图标

设置项

  • 火山 WSV: 自动预览 (volcanoWsv.autoPreview)
    • 打开 .wsv 文件时自动显示预览
    • 默认:false
    • 开启后,打开 .wsv 文件会自动在侧边栏显示预览,你可以手动切换回文本代码视图

架构设计

插件采用 扩展宿主 + Webview 双进程架构:

┌─────────────────────────────────────────────────────┐
│                   VSCode 扩展宿主                     │
│                                                       │
│  extension.ts                                         │
│    └─ 注册命令 (volcanoWsv.preview)                    │
│                                                       │
│  wsvPreviewProvider.ts                                │
│    ├─ 读取 .wsv 文件 (UTF-8)                           │
│    ├─ VolParser.parse() → VolPackage                  │
│    ├─ convertVolToProjectData() → ProjectData          │
│    └─ panel.webview.postMessage() ──────┐             │
│                                          │             │
└──────────────────────────────────────────┼─────────────┘
                                           │ postMessage
┌──────────────────────────────────────────┼─────────────┐
│                   Webview                │             │
│                                          ▼             │
│  webview-main.ts                                        │
│    ├─ 接收 ProjectData + rawSource                      │
│    └─ VolRenderer.render()                              │
│        ├─ renderPackage()  → 包表格                     │
│        ├─ renderClass()    → 类表格                     │
│        ├─ renderMethod()   → 方法表格 + 代码体           │
│        ├─ renderFieldGroup()  → 变量表格                │
│        └─ renderConstantGroup() → 常量表格              │
└─────────────────────────────────────────────────────────┘

核心模块说明

1. VolParser (src/volparser/parser.ts)

火山源码解析器,负责将 wsv 文本解析为结构化的 VolPackage 对象。

解析流程:

  1. 解析文件头部 <火山程序 类型="..." 版本=... />
  2. 解析包定义 包 包名 < 属性... >
  3. 逐行解析包体内容:
    • 类定义 类 类名 < 属性... > { ... }
    • 变量定义 变量 变量名 < 类型=... 值=... >
    • 常量定义 常量 常量名 < 类型=... 值=... >
    • 方法定义 方法 方法名 < 属性... > 参数... { 方法体 }
    • 嵌入式代码 # @begin ... # @end
    • 注释 # 注释内容 或 // 注释内容

回调机制: 解析器通过 ParserCallback 接口提供事件回调,支持自定义处理。

2. Adapter (src/adapter.ts)

数据适配器,将解析器输出的 VolPackage 转换为渲染器所需的 ProjectData 结构。

转换映射:

  • VolPackage → PackageNode
  • VolClass → ClassNode
  • VolVariable → FieldNode
  • VolConstant → ConstantNode
  • VolMethod → MethodNode
  • VolMethodParameter → ParameterNode
  • VolMethodBodyNode → CodeLineNode / LocalVariableNode / LocalConstantNode

3. VolRenderer (webview-src/renderer.ts)

DOM 渲染器,在 Webview 中将 ProjectData 渲染为表格化视图。

渲染特性:

  • 表格化布局,每个节点类型有独立的表头和列
  • 支持多行属性(rowspan 合并)
  • 支持折叠/展开(toggle icon)
  • 语法高亮(关键字、字符串、注释)
  • 缩进辅助线
  • 右键菜单(复制选中文本)
  • 复制源码按钮

4. WsvPreviewProvider (src/wsvPreviewProvider.ts)

Webview 面板管理器,负责:

  • 创建和管理 WebviewPanel
  • 读取文件内容(UTF-8)
  • 调用解析器和适配器
  • 通过 postMessage 与 Webview 通信
  • 处理复制源码请求

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft