正如标题所说,我想构建一个 VS 扩展,它能够对编辑器窗口上所做的某些更改使用react(适用于各种语言)。不一定是装饰品。
为此,我希望能够通过 Roslyn 服务 API 分析编辑器文档(如果我理解得很好,现在它是 Microsoft.CodeAnalysis 的一部分)。
有人可以指出一些文件吗?
这样做的最佳做法是什么?
通过MEF导入的接口(interface)是什么?
最佳答案
例如,您可以导出自定义 ISuggestedActionsSourceProvider
要在灯泡中添加新功能,您可以使用 ExportCodeRefactoringProviderAttribute
要添加新的重构,也可以导出 IClassifierProvider
和 ITagProvider
要在文本编辑器中对元素进行分类,请导入 ITextDocumentFactoryService
通过 ITextBuffer
检索当前的 VS 文档等等。
此外,仅使用 Microsoft.CodeAnalysis
是不够的进行某种分析,因此您需要在这些情况下添加一些额外的包。例如,这些包可以是 Microsoft.CodeAnalysis.EditorFeatures.Text
, Microsoft.CodeAnalysis.Workspaces.Common
等等。
如果您想从社区获得更具体的答案,您应该在问题中具体说明您想要什么。
您还可以查看更有用的链接和示例:Roslynator are refactoring and analyzing a code , Getting start editor extensions , Light bulb guide , Classification elements for highlighting
关于visual-studio - 如何在 VSIX 扩展中集成 Microsoft.CodeAnalysis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46342771/