VSCode 默认不支持彩虹括号,需安装 Rainbow Brackets(作者2gua)插件;手动添加语言ID如"json""html"到rainbowBrackets.languages才能启用;可自定义colors数组调整配色,冲突时建议关闭formatOnSave。

VSCode 默认不支持彩虹括号,必须装插件
VSCode 原生没有 rainbow brackets 功能,靠改设置或主题配色根本无效。硬要自己写语法高亮规则?成本远高于装一个成熟插件。目前最稳定、更新勤、兼容性好的是 Rainbow Brackets(作者:2gua),不是同名但更老的另一个插件。
- 在扩展市场搜
Rainbow Brackets,认准发布者是2gua,图标是彩色圆环套叠 - 安装后无需重启,立即生效——但只对已支持的语言起作用(如 JavaScript、Python、Rust、TypeScript)
- 如果打开 .json 或 .html 文件没反应,不是插件坏了,是它默认不启用这些语言(见下一条)
如何让彩虹括号在 JSON、HTML、Shell 等文件里也生效
插件默认只激活常见编程语言,JSON、HTML、ShellScript 这类被归为“标记/配置语言”,需要手动开启。否则你会看到括号还是灰色,以为插件失效。
- 打开设置(
Cmd+,或Ctrl+,),搜rainbowBrackets.languages - 点击
Edit in settings.json,往"rainbowBrackets.languages"数组里加语言 ID:
[ "javascript", "python", "json", "html", "shellscript", "markdown" ]
shellscript 不是 bash,markdown 不是 md;可在编辑器右下角查看当前文件的语言模式嵌套过深时颜色重复、难区分?调色方案可自定义
默认 6 层循环用色,第 7 层开始复用第一种颜色。遇到 10 层以上嵌套的模板字符串或宏展开代码,光靠颜色容易看混。这不是 bug,是设计取舍。
- 在
settings.json中添加"rainbowBrackets.colors"字段,填入你喜欢的 6–8 种十六进制色值 - 推荐用对比强、明度差异大的组合,比如:
["#FF5733", "#33FF57", "#3357FF", "#F333FF", "#33FFF3", "#FFC300"] - 改完保存,不用重启,但已打开的文件需手动触发一次括号匹配(比如删个
)再补上)才会重绘颜色
和 Prettier / ESLint 插件冲突导致括号闪烁或错位
极少数情况下,格式化插件在保存时快速重写代码,会短暂打断 Rainbow Brackets 的括号匹配状态,表现为括号高亮“跳一下”或某一层突然变灰。这不是崩溃,是时机竞争。
- 优先关掉
editor.formatOnSave,改用快捷键Shift+Alt+F手动格式化——更可控,也避免自动操作干扰高亮逻辑 - 确认
Prettier的bracketSpacing和jsxBracketSameLine设置没引入非常规换行,这类格式可能让插件误判括号层级 - 如果用的是
ESLint + prettier-eslint组合,建议换成纯Prettier,中间层越多,括号解析越容易滞后
真正卡住人的地方不在装插件,而在语言 ID 写错、或者以为 JSON 天然支持结果白等半天。多看一眼右下角的语言模式,比反复重装快十倍。











