如何为VSCode创建自定义语义令牌?

时间:2020-10-05 14:39:59

标签: visual-studio-code syntax-highlighting semantics vs-color-theme-editor

我正在创建一个颜色主题,我发现用斜体字定位功能参数的唯一方法是使用语义突出显示。问题在于,由于语义突出显示会覆盖某些设置,因此我失去了定位support.function.console(例如console.log的“日志”)的功能。

.logmember.defaultLibrary,但是如果我以语义为目标,那么其他一些东西也将使用相同的颜色设置样式。如果member.defaultLibrary并非如此不一致,那不是一件坏事,您希望样式设置的某些东西不是,这会导致不一致,这当然是不希望的。

例如,

querySelector()member.defaultLibrary而非querySelectorAll()设置样式。我还尝试过不要使用任何可以被语义覆盖的东西,但是这样做会创建过多的异常,并且某些函数和方法将被允许不使用任何样式,这更糟。

我已经尝试过Semantic Token Classification,并试图将自定义语义标记添加到扩展名的package.json文件中,但是我不知道如何将其“连接”起来:

{
  "contributes": {
    "semanticTokenTypes": [
      {
        "id": "consoleSupport",
        "description": "console support"
      }
    ],
    "semanticTokenScopes": [
      {
        "scopes": {
          "consoleSupport": ["support.function.console"]
        }
      }
    ]
  }
}

在使用开发主机时,当我尝试添加到“ semanticTokenColors”中时,它确实会识别“新” consoleSupport,它表示自动完成功能,因此我可能已经完成了一半,但是我没有不知道如何实际创建新令牌以及如何使其工作。

0 个答案:

没有答案