关掉 editor.selectionhighlight 是最直接的提速操作,它会全文暴力匹配相同字符串;再禁用冗余括号插件、限制着色深度至6层、关闭引导线和动画,可显著缓解卡顿。

VSCode 括号匹配本身不卡,但你感觉到“卡”,大概率是括号着色、引导线、符号高亮三者叠加,再撞上插件或配置不当——尤其在大型文件或 TypeScript/JS 项目里。
关掉 editor.selectionHighlight 是最直接的提速操作
很多人以为延迟来自 editor.occurrencesHighlight(选中变量后高亮所有引用),其实真正拖慢感知的是 editor.selectionHighlight:它会全文扫描**完全相同的字符串**,包括注释、字符串字面量、JSON 键名,且无防抖。光标一停,它就开始暴力匹配。
- 打开设置(
Cmd + ,),搜selection highlight - 把
editor.selectionHighlight设为false - 保留
editor.occurrencesHighlight为true(它只查语义符号,更快更准) - 执行
Developer: Reload Window生效
限制括号着色深度,避免渲染爆炸
Bracket Pair Colorizer 2 默认对所有嵌套层级染色,但在 2000 行以上的 JS/TS 文件里,10 层以上嵌套会让渲染明显变沉;VSCode 内置的 editor.bracketPairColorization.enabled 虽然更轻量,但同样可能在极端嵌套下抖动。
- 禁用对非代码语言的着色:
"bracketPairColorizer2.neverEnableForLanguages": ["plaintext", "markdown", "html"] - 若用内置方案,加这一项限制深度:
"editor.bracketPairColorization.maximumBracketNestingLevel": 6 - 别设太高,6 层已覆盖绝大多数真实代码场景;设成
10或undefined反而容易在 JSX/TSX 中卡顿
禁用冲突扩展,特别是旧版括号类工具
多个括号相关扩展共存是性能杀手。VSCode 1.67+ 已内置 bracketPairColorization,但如果你还装着 Rainbow Brackets、Auto Close Tag、Highlight Matching Tag,它们会在同一位置重复计算、重绘、抢焦点。
- 打开扩展面板(
Cmd + Shift + X) - 搜
Rainbow Brackets→ 点齿轮 →Disable - 同理禁用
Auto Close Tag和Highlight Matching Tag - 不需要卸载,禁用即可;VSCode 启动时就不会加载它们的语法监听器
关闭括号匹配动画和引导线渲染开销
垂直引导线(editor.guides.bracketPairs)视觉友好,但每层缩进都要实时绘制 SVG 线条,在 Retina 屏或低端 Mac 上有可感延迟;配合动画(如淡入)更明显。
- 设
"editor.guides.bracketPairs": false关掉引导线(颜色着色仍保留) - 或设
"editor.renderMatchingBrackets": "near"替代"always",减少常驻高亮 - 彻底关动画:
"editor.bracketPairColorization.animate": false(仅限 Bracket Pair Colorizer 2)
真正影响性能的从来不是“有没有括号高亮”,而是“有多少层同时在算、画、扫”。控制作用范围、关掉冗余扫描、卸载重复逻辑的扩展,比调颜色或换主题管用得多。尤其是 editor.selectionHighlight 这一项,90% 的“括号卡顿”反馈,关掉它就立刻变顺。











