【问题标题】:How to disable colorized brackets?如何禁用彩色括号?
【发布时间】:2022-06-15 05:43:40
【问题描述】:

当我使用 VS Code 时,我会根据一天中的时间和房间的灯光来装备浅色或深色主题。问题是当我装备一个浅色主题时,

我发布了一张我的编辑器的图片,我的浅色主题配备了演示问题。

我尝试了BracketPairColorization.enable: "false",如下图所示,但它不起作用。

有没有一种方法可以禁用为括号对着色的主题属性,或禁用着色括号对的设置?


我检查了所有设置,甚至尝试了显而易见的设置,如下图所示,但我仍然无法弄清楚如何关闭括号对颜色化功能。


如何完全禁用彩色括号?

【问题讨论】:

  • 括号对着色器是一个市场扩展,他们现在已将其包含在主 VSC 中,在原始扩展中您可以按主题修改括号颜色,点击链接 Workbench: Color Customizations 并修改基于主题的颜色
  • 尝试设置"editor.bracketPairColorization.enabled": false

标签: visual-studio-code configuration


【解决方案1】:

VS Code 默认启用了括号对着色功能。这导致许多人寻找一种禁用该功能的方法,但故事不仅仅是使用:

"editor.bracketPairColorization.enabled": false,

这是因为有 2 个不同的块引导功能已内置到括号对颜色化功能中,以及一个以相同方式突出显示的缩进引导功能。

要禁用所有括号对着色和指南,您需要执行以下操作。

{
    // Bracket-pair colorization
    "editor.bracketPairColorization.enabled": false, 

    // Bracket-pair guides
    "editor.guides.bracketPairsHorizontal": false,
    "editor.guides.highlightActiveBracketPair": false,

    // Indentation guides
    "editor.guides.indentation": false,
    "editor.guides.highlightActiveIndentation": false
}

要了解如何仅禁用部分功能,或更多关于此功能的一般信息,请参阅以下部分


简介


禁用/配置括号对着色和指南

V.S.代码的 “括号对着色” 功能让许多开发人员感到沮丧。最近它被默认激活了,人们对此感到不安。问题不在于实际功能本身,而在于该功能具有启用/禁用设置,当设置为禁用该功能时,该设置似乎不会关闭该功能。如果您尝试关闭此功能,但最终无法、确实想生气或对自己生气(这就是我在类似情况下所做的),而且大多数人都经历了同样的困难;此功能不会将其“让用户感到沮丧”仅限于那些希望完全禁用它的人,事实上,该功能是高度可定制的,它实际上包含大约 3 个不同的功能,并且对于第一次尝试配置它的人来说很难理解。

        最好的方法是演示用于完全禁用该功能的配置。然后,在此之后,我将引导您完成每个设置,并解释它们是做什么的,以及它们附加的主题属性。



第 2 部分


禁用括号对着色和括号对指南

下面是 “尝试过 -&- true” 方法,用于完全禁用 bracketPairColorizationbracketPairColorization.guidesguides.indentation 编辑器功能(或者最好输入 editor.* features”)。

{
    // Bracket-pair Highlighting
    "editor.bracketPairColorization.enabled": false, 

    // Bracket-pair guides
    "editor.guides.bracketPairsHorizontal": false,
    "editor.guides.highlightActiveBracketPair": false,

    // Indentation guides
    "editor.guides.indentation": false,
    "editor.guides.highlightActiveIndentation": false
}


第三部分


禁用部分括号对着色

如果该功能的某些部分确实使您的隐藏变得破裂,但您喜欢其他部分,您可以指定括号对的某些渲染、着色和“onActive”突出显示,以及缩进指南(水平和/或垂直),使用如下所示的配置。


(3a) 利用彩色括号对设置

事实上,我觉得此功能所需配置的复杂性是 100% 可以用它来做的。虽然我不同意默认激活它。

以下演示了使用括号对着色可以完成的工作,这使得它变得如此棒。如您所见,设置"editor.language.colorizedBracketPairs": [ ... ] 正在下面的sn-p 中配置。下面的数组对是该功能将突出显示的括号对。换句话说,这是如何定义突出显示哪些括号对。禁用括号对着色的一种方法是不将任何对分配给colorizedBracketPairs 设置。您可以定义从函数大括号到 markdown astriks ["***", "***"] 到 C 预处理器指令的所有内容。当谈到这个设置时,世界就是你的最爱。

    "editor.language.colorizedBracketPairs": [
        ["{", "}"], // Block-Scoped Braces/Function-Braces
        ["[", "]"], // Array Square-brackets
        ["(", ")"], // Func Call-args/Declaration-params Brackets
        ["<", ">"], // HTML/XML Tags
        ["\"", "\""], // String Quotations
        ["_", "_"], // Markdown: Italicized
        ["**", "**"], // Markdown: Bold
        ["**_", "_**"], // Markdown: Italicized & Bold
        ["{{", "}}"], // Double Curly Brackets
        ["`", "`"], // Back-tics
        ["#ifndef", "#endif"], // Highlight C Directives as pairs
        ["<%", "%>"], // Wrapping variables in JSON
        ["${", "}"], // Wrapping template variables in JS/TS
        ["$(", ")"] // Wrapping of template variables in BASH
    ]

(3b) 自定义缩进指南

您还可以通过在适用的情况下分配 true/false 以外的值来自定义 “括号对着色指南”“缩进指南”

例如:
例如:下面的两个设置可以使用第三个布尔替代值进行配置:

下面的配置,将“括号对指南”配置为仅突出显示活动块的活动指南,而没有其他指南。

  "editor.guides.bracketPairs": "active",
  "editor.guides.bracketPairsHorizontal": "active",

现在,如果您将下面的设置配置为 true,那么如果括号对同时也处于活动状态,它将不会做任何事情。

  "editor.guides.highlightActiveIndentation": false,

上面 sn-p 中的 editor.guides.highlightActiveIndentation 设置是一对设置的一部分,用于自定义 VS Code 的一部分,早在括号对出现之前。



注意:如果您将以下设置设置为true,并且如果您将"editor.guides.bracketPairs" 设置为true,并且过度突出显示的编辑器就结束了结果。您将看到在不同级别突出显示的缩进指南,因为括号对的工作方式与缩进指南不同。括号对指南尝试使用语言定义的块突出显示,而缩进指南使用分配给 "tab.width": number? 的值来确定它将突出显示的位置。这会导致缩进在许多情况下被突出显示两次。

  "editor.guides.indentation": true,
  "editor.guides.highlightActiveIndentation": true,

出于某种原因,他们做了一个设置来帮助您同时配置这两个,我不建议这样做,但这是分配给"highlightActiveIndentation" 的值“始终”。如果您确实想用括号对打开它们,下面显示了您将如何做到这一点。

  "editor.guides.bracketPairs": "active",
  "editor.guides.bracketPairsHorizontal": "active",
  "editor.guides.indentation": true,
  "editor.guides.highlightActiveIndentation": "always",

另一个选项是您可以将 "Bracket-pair guides" 设置为 true,然后将它们配置为突出显示活动块,如下所示:

  "editor.guides.bracketPairs": true,
  "editor.guides.bracketPairsHorizontal": true,
  "editor.guides.highlightActiveBracketPair": true,

第四部分


相关主题颜色

所以如果我们看一下最后一个sn-p,就在上面(我会在下面再次发布)......

  "editor.guides.bracketPairs": true,
  "editor.guides.bracketPairsHorizontal": true,
  "editor.guides.highlightActiveBracketPair": true,

...您可以看到所有括号对都已打开(因此它们是彩色的),但活动的括号对被突出显示。它的工作方式是在主题中,或在您的 settings.json 文件中,使用 "workbench.colorCustomizations": {}, em> 设置,括号对的标准着色在 6 个不同的块(或范围)级别上被着色为不同的颜色。分配这些颜色的颜色属性如下所示:

    "editorBracketPairGuide.background1": "#CC1177",
    "editorBracketPairGuide.background2": "#5544DD",
    "editorBracketPairGuide.background3": "#CC6622",
    "editorBracketPairGuide.background4": "#779428",
    "editorBracketPairGuide.background5": "#009944",
    "editorBracketPairGuide.background6": "#1155DD",

现在,如果您将highlightActiveBracketPair 设置为true,那么您关注的块会更亮,或者颜色不同(这取决于下面的属性是如何配置的),活动的括号PairGuide 是彩色的使用这些主题属性:

    "editorBracketPairGuide.activeBackground1": "#EE2288",
    "editorBracketPairGuide.activeBackground2": "#8844FF",
    "editorBracketPairGuide.activeBackground3": "#FF5C0C",
    "editorBracketPairGuide.activeBackground4": "#99CC33",
    "editorBracketPairGuide.activeBackground5": "#00CC88",
    "editorBracketPairGuide.activeBackground6": "#0077FF",

实际的括号对(或实际的括号本身)使用这些属性着色:

    "editorBracketHighlight.foreground1": "#CC1177",
    "editorBracketHighlight.foreground2": "#5544DD",
    "editorBracketHighlight.foreground3": "#CC6622",
    "editorBracketHighlight.foreground4": "#779428",
    "editorBracketHighlight.foreground5": "#009944",
    "editorBracketHighlight.foreground6": "#1155DD",
    "editorBracketHighlight.unexpectedBracket.foreground": "#DD100C",
欲了解更多信息,请访问:
https://code.visualstudio.com/blogs/2021/09/29/bracket-pair-colorization

-&/或-

https://code.visualstudio.com/updates/v1_60#_high-performance-bracket-pair-colorization

【讨论】:

  • 感谢您的回答。基本上您是否确认该功能不支持主题?我的意思是:我似乎无法为不同的主题选择不同的颜色。
  • 我将更新我的答案以澄清这一点
  • 好的,请阅读开头的摘录,我添加了一些内容以尝试澄清正在发生的事情。
  • 一开始我确实明白,但我的评论并不清楚。问题是如果我切换到 Default Light 主题,我仍然有不可见的黄色括号。但是,这不会发生在我安装的 VSC Insiders 中。现在我需要了解原因。
  • 谢谢!默认情况下启用了这个功能有点烦人。
【解决方案2】:

TL;DR

您可以通过将以下内容添加到 settings.json 文件中来删除此功能。

快捷方式:(输入ctrl+shift+p,点击Open Settings (JSON)

"editor.language.colorizedBracketPairs": []

或者,如果您想设置特定的括号,您可以将它们传递到数组中

"editor.language.colorizedBracketPairs": [ ["{", "}"], ...]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-25
    • 2018-05-09
    • 2011-05-15
    • 2018-07-10
    • 2021-04-20
    • 2020-07-13
    • 2019-08-01
    相关资源
    最近更新 更多