【问题标题】:VS Code, changing color theme for variablesVS Code,更改变量的颜色主题
【发布时间】:2019-07-24 01:33:36
【问题描述】:

在 VS Code 中,有人知道如何更改 C++ 变量名称的颜色主题。我可以更改函数、cmets、关键字的颜色,但我无法让变量起作用。任何帮助都会非常感谢。

【问题讨论】:

标签: visual-studio-code vscode-settings vscode-extensions


【解决方案1】:

您可以编辑相应的主题*.json文件。例如,如果您使用 Dark+(默认深色) 主题,则可以在 extensions/theme-defaults/themes/dark_plus.json 找到主题 json 文件。在这个文件中,我们找到了以下文本匹配主题规则:

{
    "name": "Variable and parameter name",
    "scope": [
        "variable",
        "meta.definition.variable.name",
        "support.variable",
        "entity.name.variable"
    ],
    "settings": {
        "foreground": "#9CDCFE"
    }
}

请注意,有些主题没有为变量范围定义样式,因此您必须添加自己的样式(如上面的 sn-p)。此外,并非所有样式的变量命名都在 c++ 语法文件中定义。有关如何添加特定命名样式语法的更多详细信息,请参阅this answer。

【讨论】:

    【解决方案2】:

    更新:现在可以通过 C++ 扩展来实现。支持@TheBat 的回答,因为他最初发布了更新。范围是variable.other.local,他的回答显示了要添加到您的设置文件中的内容。

    注意:如果您没有扩展名,以下答案仍然准确

    我是 VS Code C++ 语法的维护者,遗憾的是还没有一种方法可以更改所有 C++ 变量的颜色,Python 语法也是如此。您可以更改source.cpp 的颜色,这将更改默认颜色,您可以使用variable 和variable.parameter 更改一些现有变量的颜色,但这仍然不会影响许多未标记的变量。

    我们正在努力改变这一点,但这需要相当长的时间。 对于一般范围名称,请查看https://macromates.com/manual/en/language_grammars#naming-conventions

    【讨论】:

      【解决方案3】:

      自从原始答案发布以来,这已经发生了变化,现在已经过时了。 正如 cmets 中提到的 @alex-myers,您可以使用 TextMate 来定位智能感知令牌。

      例如:

      "editor.tokenColorCustomizations": {
          "[Visual Studio Dark]": {
              "textMateRules": [
                  {
                      "scope": "variable.other.local",
                      "settings": {
                          "foreground": "#FF0000",
                      }
                  }
              ]
          }
      }
      

      见:https://code.visualstudio.com/docs/cpp/colorization-cpp

      【讨论】:

        猜你喜欢
        • 2020-10-03
        • 1970-01-01
        • 1970-01-01
        • 2017-07-07
        • 1970-01-01
        • 1970-01-01
        • 2019-03-05
        • 2018-09-21
        • 1970-01-01
        相关资源
        最近更新 更多