【问题标题】:No bracket matching when using the proposed semantic tokens API in VSCode在 VSCode 中使用建议的语义标记 API 时没有括号匹配
【发布时间】:2020-01-08 15:18:21
【问题描述】:

我正在使用 VSCode (Insider) Semantic Tokens API 来提供 XSLT 3.0/XPath 3.1 语法高亮。

我们的目标是避免使用 TextMate 语法,因为这对于突出显示 XSLT/XPath 的语法来说实在是太有限了 (VSCode Issues - 216)。 TextMate 语法也存在性能问题。

我的实现扩展了Semantic Tokens sample,并为字符{([])}返回带有“运算符”tokenType的令牌。

我已经为扩展开发主机修改了 settings.json 如下,但这没有区别:

{
  "[typescript]": {},
  "git.enableSmartCommit": true,
  "git.autofetch": true,
  "[XPath]": {
    "editor.matchBrackets": "always"
  }
}

我希望这些标记类型的括号匹配是自动的,但事实并非如此。有解决方法吗?我使用了错误的 tokenType 吗?我应该提出功能请求吗?

【问题讨论】:

  • 考虑到这个功能甚至还没有发布,GitHub 问题似乎是一个更好的讨论它的地方。

标签: visual-studio-code vscode-extensions


【解决方案1】:

Language Configuration 有一个可以设置的括号属性:

括号定义: 当您将光标移动到此处定义的括号时,VS Code 将突出显示该括号及其匹配对。

{
  "brackets": [["{", "}"], ["[", "]"], ["(", ")"]]
}

language-configuration-sample 中说明了它的用法。

【讨论】:

  • 我找到了解决方案。我没有找到正确的文档部分。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多