Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>BPE HelperNew to Visual Studio Code? Get it now.
BPE Helper

BPE Helper

JenW1nt0p

|
3 installs
| (0) | Free
VS Code helper for BPE compose_conf / avenue_conf authoring, navigation, completion, and diagnostics
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

BPE Helper

BPE Helper 是一个面向 C++ BPE / Avenue XML 工程的 VS Code 扩展,专门服务于这类目录结构的仓库:

  • compose_conf/
  • avenue_conf/
  • config.xml
  • trigger_config.xml

它的目标不是做通用 XML 编辑,而是为 BPE 流程编排、服务描述、路由配置和常见框架变量提供更贴近真实工程的补全、跳转和校验能力。

适用场景

  • 编写 compose_conf/*.xml 流程组合文件
  • 编写或阅读 avenue_conf/*.xml 服务描述文件
  • 排查 config.xml 中的服务路由配置
  • 在 BPE 项目中定位本地实现、远程服务、DB/Cache/Redis 服务

核心能力

1. 流程文件补全

在 compose_conf/*.xml 中提供:

  • request service="服务.消息" 对应下游请求参数补全
  • $this.xxx
    • request 中联想下游消息 requestParameter
    • response 中联想当前流程服务 responseParameter
  • $req.xxx
    • 联想当前流程服务 requestParameter
  • $rsp.this.s、$code.s
    • 联想当前 node 下的 sequence
  • $rsp.this.s1.
    • 联想 sequence 对应调用服务的响应字段
  • $rsp.nodeName.s
    • 联想指定 node 下的 sequence
  • $rsp.nodeName.s1.
    • 联想指定 node + sequence 的响应字段

2. 跳转

  • 从 compose_conf 中的 service="服务.消息" 跳到 avenue_conf 对应消息定义
  • 从 avenue_conf 中的 <message name="..."> 反向跳到本地 compose_conf
  • 若不是本地实现,则跳到 config.xml 中对应的 SosList / ConfigDb / DbSosList / CacheSosList / RedisSosList

3. 诊断

  • 基础 XML 闭合校验
  • compose 根节点、endnode、goto node、node.index、sequence.index 校验
  • request service="服务.消息" 目标存在性校验
  • $rsp.node.sequence.field、$code.sequence 的 node/sequence 存在性校验
  • $rsp.this.s1.field、$rsp.node.s1.field 是否属于对应调用服务的 responseParameter
  • $req.xxx 是否属于当前流程服务的 requestParameter
  • $this.xxx 是否属于目标消息请求或响应参数
  • 流程变量 <def>、未定义变量、保留变量使用校验
  • 框架内置变量识别,例如 $lastcode

4. 框架兼容性

  • request service="服务.消息" 中的服务名和消息名按大小写不敏感匹配
  • 兼容历史流程文件中的大小写混写写法

安装

从 VS Code Marketplace 安装,或使用命令:

code --install-extension JenW1nt0p.bpe-helper

如果使用本地包安装:

code --install-extension /path/to/bpe-helper-0.1.5.vsix

使用说明

  1. 在 VS Code 中打开 BPE 工程根目录。
  2. 确保仓库中包含 compose_conf、avenue_conf 和 config.xml。
  3. 打开 XML 文件开始编辑,补全、诊断和跳转会自动生效。
  4. 跳转支持使用 F12,也支持命令面板中的 BPE: Go To Target。
  5. 当你批量修改了服务定义或流程文件后,可以执行命令面板中的 BPE: Refresh Index 重新刷新索引。

这个扩展支持两种打开方式:

  • 直接打开单个 BPE 项目目录,例如 as-lsc/
  • 打开包含多个 BPE 项目的父目录,扩展会按当前文件向上定位最近的项目根目录

Windows 使用说明

这个扩展使用的是 VS Code 标准的“转到定义”能力,因此鼠标手势由 VS Code 自身设置决定,不是插件单独控制:

  • 如果 editor.multiCursorModifier 是 alt,通常表现为 Ctrl+Click 跳转
  • 如果 editor.multiCursorModifier 是 ctrlCmd,通常表现为 Alt+Click 跳转

也就是说,在部分 Windows 环境里出现“Alt+Click 能跳、Ctrl+Click 不能跳”是 VS Code 的预期行为,不代表插件失效。

如果你希望恢复 Ctrl+Click 跳转,可以在用户设置里加入:

"editor.multiCursorModifier": "alt"

如果不想依赖鼠标手势,也可以直接使用:

  • F12
  • 命令面板中的 BPE: Go To Target

已知限制

  • 反向跳转优先识别“是否有本地 compose 实现”;没有时再按 config.xml 路由块查找。
  • 对于纯本地同步插件类服务,如果既没有 compose 实现、也没有 config.xml 入口,则当前不会提供跳转目标。
  • 这个扩展假设工程遵循 BPE/Avenue 约定,不适用于任意 XML 项目。

开发与验证

本地验证:

node scripts/smoke.js

打包:

npx @vscode/vsce package
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft