运行 当 VSCode 扩展处于活动状态时的节点脚本

Run node script when VSCode extension is active

我正在使用 LSP(语言服务器协议)开发 VSCode 扩展,只要用户打开扩展名为“.ext”的文件,该扩展就会被激活。 它具有以下结构:

我已经在为 VSCode 使用语言 Client/Server 库,并且语言验证包括在本地部署在包含 ANTLR4 类 的随机空闲端口上的 Web 服务器上,它接收用户正在修改的文件的内容。分析此内容后,它通过 HTTP 向语言服务器部分发送响应,其中包含有关接收到的代码片段的诊断信息。然后,Server 将调整后的诊断信息发送给 Client,因此 VSCode 可以使用它们来通知用户有关错误。

扩展工作正常,但每当我想使用扩展时,我都必须手动 运行 语言验证服务器(写在 Node.js 中)。有没有办法在激活扩展时自动启动该节点服务器?

提前致谢。

使用 VS 代码扩展在另一台机器上启动 http 服务器的想法对我来说听起来很奇怪,我认为您可以直接在您的语言服务器中使用 ANTLR 生成的解析器。如果解析器不是以与服务器相同的语言生成的,您可以从语法重新生成它。