如何为每个主题定义分类格式

时间:2014-03-17 12:12:24

标签: visual-studio visual-studio-extensions vsx

在我的编辑器扩展程序中,我使用关键字,标识符等的自定义分类格式。当然,我可以使用默认格式,因为然后颜色(语法高亮使用)将根据所选主题进行更改。

由于我的自定义编辑器还需要其他分类类型(例如标点符号类型),因此当用户配置另一个主题时(通过从Dark切换到Blue主题,这些类型的颜色不会更改, 例如)。我想知道如何提供特定于主题的格式。

1 个答案:

答案 0 :(得分:0)

我发现支持多种配色方案(主题)的最佳方法是挂钩ThemeChanged事件,然后相应地更新您的分类类型。在可能的情况下,我从预定义的VS格式更新我的自定义颜色,类似于我的自定义格式(例如,使用标准VS 关键字颜色来设置我的自定义关键字格式的默认值),因为我知道这些颜色将会可能由用户已应用的任何自定义主题维护。

Visual F# Power Tools使用这种方法,我从this回答中发现。