我遵循了 Visual Studio 代码中的本教程,了解如何创建语言服务器来验证扩展文件。我继续制作 lsp-sample 项目的副本并让它运行。
在我对这个项目的分析中,我注意到只有工作区中打开或更改的文件被验证。
// The content of a text document has changed. This event is emitted
// when the text document first opened or when its content has changed.
documents.onDidChangeContent((change) => {
validateTextDocument(change.document);
});
这对于大多数情况来说都很好,但我认为当工作区打开时,所有文件(无论是否被编辑器打开)都应该经过验证,以便在 vscode 中拥有更丰富的 IDE 体验。
任何有语言服务器协议经验的人都可以帮助我如何做到这一点吗?据我所知,“文档”对象仅填充打开的文件。
非常感谢,里卡多