我正在使用LSP(语言服务器协议)开发VSCode扩展名,只要用户打开扩展名为“ .ext”的文件,该代码就会被激活。 它具有以下结构:
我已经在使用VSCode的语言客户端/服务器库,并且语言验证包括本地部署在包含ANTLR4类的随机免费端口上的Web服务器,该端口接收用户正在修改的文件的内容。在分析了此内容之后,它将通过HTTP将响应发送到包含有关所接收代码段的诊断的Language Server部分。然后,服务器将调整后的诊断发送给客户端,以便VSCode可以使用它们将错误通知用户。
该扩展程序工作正常,但是每当我想使用该扩展程序(在Node.js中编写)时,都必须手动运行语言验证服务器。每当激活扩展时,是否可以自动启动该节点服务器?
谢谢。
答案 0 :(得分:1)
使用VS Code扩展名在另一台机器上启动http服务器的想法对我来说听起来很奇怪,我认为您可以直接在语言服务器中使用ANTLR生成的解析器。如果解析器不是用与服务器相同的语言生成的,则可以从语法中重新生成它。