vscode 1.60+ 原生支持括号颜色高亮,需开启 editor.bracketpaircolorization.enabled 和 independentcolors,并卸载旧插件、确认语言模式正确,否则即使设置正确也无颜色。

VSCode 1.60+ 已原生支持括号颜色高亮,不需要装插件——但默认可能被关掉、被旧插件干扰、或主题/语言模式不匹配,导致你“开了却没颜色”。
确认 editor.bracketPairColorization.enabled 已开启
这是最常被忽略的开关。VSCode 1.60+ 默认启用,但手动改过设置、或用过旧版配置模板时,它常被设为 false。
- 按
Ctrl + ,(Windows/Linux)或Cmd + ,(macOS)打开设置 - 搜索
bracket pair colorization - 勾选
Editor › Bracket Pair Colorization: Enabled - 顺手检查
Editor: Match Brackets是否为always,否则光标靠近括号时不触发高亮
必须开 independentColors 才能分层着色
只开 enabled 不够:所有嵌套括号会共用同一组循环色(比如三层都红),看起来像“没变色”。真正区分层级,得启用独立着色模式。
- 在设置里搜
independent colors - 勾选
Editor › Bracket Pair Colorization: Independent Colors - 对应 JSON 配置是
"editor.bracketPairColorization.independentColors": true - 不开这个,
foreground1–foreground3就只是摆设;开了之后,第 1 层用foreground1,第 2 层用foreground2,第 3 层用foreground3,第 4 层开始循环回foreground1
别让旧插件抢走控制权
Bracket Pair Colorizer 和 Bracket Pair Colorizer 2 这类老插件,和 VSCode 原生功能冲突——不是“增强”,而是直接禁用着色逻辑。
- 打开扩展面板(
Ctrl+Shift+X),搜索Bracket Pair Colorizer - 卸载所有带这个名字的扩展,包括 v1 和 v2
- 重启 VSCode 或重载窗口(
Ctrl+Shift+P→Developer: Reload Window) - 如果还残留效果,说明有其他扩展(如
Auto Close Tag或某些主题)在覆盖 token 颜色,可临时切到Default Dark+主题验证
语言模式和引导线补位很关键
颜色只是辅助,真正帮你定位作用域的是语言识别 + 引导线。很多“没颜色”的问题,其实根本不是配色问题。
- 右下角语言标签必须显示正确模式(比如
JavaScript React,不是Plain Text;Vue而非HTML)——点它手动切换 - 开启
editor.guides.bracketPairs(设为"all"或"active"),显示垂直对齐线,比纯颜色更可靠 - 括号在字符串或注释里(如
"if (x > 0) { }"中的{})不会着色——这是设计行为,不是 bug - 嵌套超 6 层时颜色复用是故意的,不是缺陷;此时应依赖引导线 + 光标悬停高亮框双重提示
最容易被忽略的其实是语言模式和旧插件共存——哪怕设置全对,只要右下角写着 Plain Text 或后台还跑着 Bracket Pair Colorizer 2,颜色就永远出不来。











