【问题标题】:How to set syntax highlighting for Dart variable in Visual Studio Code如何在 Visual Studio Code 中为 Dart 变量设置语法高亮
【发布时间】:2019-05-14 14:13:15
【问题描述】:

我正在使用 Visual Studio Code 使用 Flutter 对 Dart 进行编码。我安装了 Dart 和 Flutter 插件以及来自 Matta Astorino 的 Material 主题。问题是我无法使用材料主题海洋高对比度颜色主题使用 Dart 语言专门设置变量的语法高亮。

我使用的设置:

  "editor.tokenColorCustomizations": {
    "[Material Theme Ocean High Contrast]": {
    "comments": "#229977",
    "variables": "#ffffff"
    }
  },

-Dart

从上图中,cmets 语法高亮似乎工作正常,但变量的语法高亮仍然显示为灰色(应该是白色)。

-JavaScript

在 JavaScript 中,它似乎可以正常工作。

请帮助 VSCode 高亮这些 Dart 语法谢谢。

【问题讨论】:

    标签: dart visual-studio-code syntax-highlighting vscode-settings material-theme


    【解决方案1】:

    我不使用 Dart,但我可以这么说,有时您必须更具体地设置语法范围颜色。

    首先 - 您需要知道范围是什么。为此,请运行 Inspect TM Scopes

    您已在此处描述了如何操作:

    为了更好地理解,最好阅读:

    Sublime Text 也有很好的解释:

    好的,现在:

    当您发现范围是什么时,您必须创建或覆盖它。 示例:

        "editor.tokenColorCustomizations": {
            "[My Theme Name]": {
                "textMateRules": [
                    {
                        "name": "Entity",
                        "scope": "entity.name",
                        "settings": {
                            "foreground": "#FFC66D"
                        }
                    },
                ]
            }
        },
    

    如果您要创建越来越多的新范围,请记住:

    • 过于具体会导致配色方案通常只适合一种或两种语法。

    【讨论】:

    • 它有效,用你的 textMateRules 弄清楚了。竖起大拇指
    • @brendan VSCode 似乎没有变量的范围。你是怎么做到的?
    • @Dimitrie-TomaFurdui 从上面的答案中,您可以看到在检查范围后,您将找到范围名称并为范围应用 textMateRules。例如:在 dart 中,变量是 VSCode 中的“源”,因此您可以设置 textMateRules 以覆盖“源”范围的设置。
    • @brendan 老实说我同意 Dimitrie 的观点,变量被描述为“source.dart”,但每件事都是,就像“source.dart”是根!示例:一个类被定义为“support.class.dart”和“source.dart”,因此设置它会在没有其他定义时设置整体颜色!
    • 我已经解决了项目中的一个问题github.com/Dart-Code/Dart-Code/issues/2237
    猜你喜欢
    • 2017-01-30
    • 2011-02-08
    • 2019-09-19
    • 2019-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-03
    • 2017-09-13
    相关资源
    最近更新 更多