我想写一个 VSIX LSP 扩展。我希望它以最简单的方式工作——这似乎是使用“打开文件夹”功能打开一个代码文件夹,然后做我的事。
要启动 LSP 服务器,我需要知道打开的文件夹的目录。我如何知道 Visual Studio 是否处于“打开文件夹”模式(如果不是,则不应启动 LSP),以及如何知道该文件夹的路径(以便我可以启动 LSP 服务器)?
我发现https://docs.microsoft.com/en-us/dotnet/api/microsoft.visualstudio.shell.interop.ivssolutionevents7?view=visualstudiosdk-2017这似乎很有希望,因为我可以注册某些特定文件夹已打开 - 告诉我已使用“打开文件夹”功能的事件可能是完美的 - 如果文件夹已打开,则启动该文件夹的 LSP。