如何使Roslyn语法可视化工具扩展工作



安装Roslyn时,它附带了几个很棒的演示工具。首先,我认为对于那些想更深入地学习语法树的人来说,最有价值的是语法可视化工具窗口,它显示了活动*.cs文件的语法树。

当我启动这个扩展并在VisualStudio的测试实例中尝试它时,一切都很好。但当我安装了这个扩展后,它就不再工作了。我仍然有View->OtherWindows->RoslynSyntaxVisualizer,但只是弹出了一个空窗口工具。

有人遇到同样的问题并知道解决方案吗?

我想也许我需要复制这个扩展在重建时产生的DLL文件,但我不知道我应该把它放在哪里。

后来我发现了另一个有趣的细节——当我启动自己的扩展时,语法可视化工具就工作了!所以,它只能在VisualStudio的测试实例中工作。为什么会这样?

只有在启用Roslyn的情况下运行Visual Studio时,语法可视化工具才能工作。启动Visual Studio的测试实例时,Roslyn会自动启用。使用Roslyn手动启动Visual Studio可以通过在快捷方式中添加/rootsuffix Roslyn来完成,但要注意Roslyn尚未完成。根据您正在处理的内容,默认情况下启用它可能不可取。当然,您也可以使用Roslyn创建另一个快捷方式,这样您就可以选择想要的快捷方式。

如果在Visual Studio的代码选项卡中看到[Roslyn],则可以使用可视化工具。另一种验证Roslyn是否已启用的方法是查看您的扩展。Roslyn语言服务必须在那里才能工作。如果不是这样,则可以打开可视化工具,但它不会显示任何内容。

您可以在此处找到有关可视化工具扩展的详细信息。

Nico很可能已经找到了答案。在Syntax Visualizer项目的Debug属性中查看它是否使用/rootsuffix Roslyn启动。此外,如果不以这种方式启动,您应该能够在C#REPL和C#脚本编辑器窗口中看到语法可视化工具;因为这些是Roslyn CSharp的编辑。

最新更新