gpt4 book ai didi

c# - Visual Studio 2010+ 中的自定义关键字着色

转载 作者:可可西里 更新时间:2023-11-01 08:27:26 24 4
gpt4 key购买 nike

我正在尝试为 C# 代码的 Visual Studio 编辑器中的某些关键字添加自定义着色。我希望能够将实现 IDisposable 的任何类型着色为不同的颜色。理想情况下,我想创建一个简单的类/接口(interface)列表,这些类/接口(interface)在我可以编辑的某种配置中派生自 IDisposable。 (尽管如果您说有一种方法/插件可以自动找到所有一次性类型并独立为它们着色,那将是 chalice )。

我进行了大量研究,看起来“编辑器分类器”扩展可能会成功。然而,我创建了一个仅尝试为“Stream”一词着色的代码,尽管它确实命中了我试图突出显示该词的代码,但它最终并未在编辑器中突出显示。

我已将我的 VS 扩展添加到 Github here

这看起来真的应该相当简单,但我在这条路上走了很多路,却发现了死胡同。是否有更简单的方法来执行此操作,或者我的扩展是否已损坏?

更新

很奇怪。我刚刚再次运行我的扩展,虽然它没有突出显示编辑器中的文本,但当您将鼠标悬停在类型/变量上时,它会突出显示弹出文本中“流”的所有实例!有什么办法让它应用到编辑器上吗?

enter image description here

最佳答案

根据您是否使用 Jetbrains Resharper,您可以为此编写一个插件。这样,您不仅可以在变量上添加 IDisposable 的视觉通知,还可以在且仅当它没有被调用时提供快速修复,这就是我假设您想要捕获的。请注意,我可以想象已经有一个 R# 插件。我知道我也考虑过这个,但我懒得为此写一个插件。

顺便说一句,不要误会我的意思 - 如果您还没有使用 r#,您应该考虑尝试一下。

除其他外,您将使用此:API-QuickFix

还有一些方法可以定义自定义关键字,就像 resharper 所做的那样,由自定义标记给出并对其应用快速修复。

PS:不,我不在 jetbrains 工作。就是那么好:)

更新:

潜在的 VS 扩展修复?

检查这个:MSDN Link Highlighting Text

我尝试打开您的 github 项目,但无法打开,所以我想我会检查 msdn。似乎您派生自错误的类来满足您的需求?

MSDN 关键字“Editors - Extending the Editor - Walkthrough: Highlighting Text”

我知道 SO 需要网站上的代码,但 msdn 链接不太可能失效,并且根据给定的信息可以很容易地找到内容 :)

关于c# - Visual Studio 2010+ 中的自定义关键字着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24685995/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com