brackethighlighter 高亮需三要素:match_brackets 显式设为 true、high_visibility_enabled_by_default 设为 true、主题定义 brackethighlighter.* scope;缺一不可。

match_brackets 必须显式设为 true 才能触发高亮
BracketHighlighter 不是独立运行的括号识别器,它完全依赖 Sublime 原生的 match_brackets 开关来判断“哪里有括号对”。如果这个值没在用户设置里写明,哪怕默认是 true,Sublime 也当它是 false —— 插件连初始化都不会做。
常见错误包括:match_bracket(少个 s)、match-brackets(用了短横线)、或整行被 // 注释掉。一旦拼错,光标停在 { 上另一边毫无反应,且没有任何报错提示。
-
match_brackets_braces设为 true 才响应{} -
match_brackets_square设为 true 才响应[] -
match_brackets_angle强烈建议保持false,否则<div> 在 JS/Python 文件里会频繁误匹配<li>改完 <code>Preferences → Settings右侧用户配置后,保存即生效,不用重启
high_visibility_enabled_by_default 是常驻高亮的硬开关
原生 match_brackets 和 BracketHighlighter 默认都只在光标悬停时闪一下;想让括号边框“一直亮着”,看清嵌套层级,必须打开 high_visibility_enabled_by_default。
这个配置不在主设置里,而是在 Preferences → Package Settings → BracketHighlighter → Settings – User 中添加:
"high_visibility_enabled_by_default": true
顺手加上这几项更实用:
-
"high_visibility_style": "outline"(实线边框,比背景色更轻量、不遮代码) -
"high_visibility_extra_offsets": ["left", "right"](左右多延展一点,视觉上更易定位) - 如果其他插件(如 AutoFileName、Tag)也在监听括号 scope,临时禁用它们排查干扰
主题缺 brackethighlighter.* scope 就等于没配色
BracketHighlighter 自己不画颜色,它只是告诉 Sublime:“请用 brackethighlighter.round 这个 scope 的样式渲染圆括号”。如果当前主题文件里没定义这个 scope,就会 fallback 到极浅灰,看起来就像没开。
快速验证方法:在 BracketHighlighter 用户设置里加一行 "color": "#FF5252",如果边框立刻变红,说明就是主题缺配色。
- 右下角点击语法名 → 切换到
Adaptive或Monokai主题,看是否立刻清晰 - 确认是主题问题后,用
PackageResourceViewer: Open Resource复制当前主题的.sublime-color-scheme到Packages/User/下再编辑 - 在 rules 数组里补上三类括号的 scope,例如:
"scope": "brackethighlighter.round, brackethighlighter.curly, brackethighlighter.square" - 注意
brackethighlighter.curly和brackethighlighter.round大小写敏感,拼错就 fallback 到默认灰
右下角显示 Plain Text 时所有括号设置都白搭
括号高亮依赖 Sublime 的语法解析器输出的 scope。如果右下角语言模式显示为 Plain Text,哪怕你把所有配置调得再完美,{} 在 JSON 文件里也不会亮——因为解析器根本没给括号打上 meta.brace.curly 这类 scope。
这不是 BracketHighlighter 的锅,而是语法识别链路断了:
- 先确认文件后缀是否被正确关联(比如 .json 应该对应 JSON 语法)
- 右下角点击语言名 → 手动选成对应语法(如 JavaScript、Python、JSON)
- 如果总是回落成 Plain Text,检查是否有插件劫持了语法检测逻辑(比如某些老旧的自定义 syntax 文件)
- 临时用
Ctrl+Shift+P→Set Syntax: JSON强制指定,验证是否恢复高亮
真正卡住人的地方往往不是插件装没装,而是 match_brackets 没开、high_visibility_enabled_by_default 没设、或者主题压根没定义 brackethighlighter.curly —— 这三个点漏一个,高亮就只剩“理论上存在”。











