Ctrl+M(Windows/Linux)或Cmd+M(macOS)是唯一原生跳转匹配括号的方式,但光标必须精确落在{、}、(、)、[、]任一字符上,停在内部、空格、换行符或变量名上均无效;需确保语法模式正确(非Plain Text)、英文输入法启用且"match_brackets": true。

Ctrl+M(Windows/Linux)或 Cmd+M(macOS)是唯一原生方式,但必须光标精确落在{或}字符上——停在内部、空格、换行符或变量名上,它就完全不响应。
光标没踩准{或},Ctrl+M 就是静音
Sublime 不识别“括号附近”或“括号内部”,只认字符本身。比如 if (x > 0) { console.log(y); },光标停在 console、y、{前的空格、甚至{后紧挨的换行符,Ctrl+M 都不会触发。
- 用
Ctrl+←或Ctrl+→(跳词)快速把光标挪到最近的{或}上再试 - 鼠标悬停时若看到高亮配对(需
"match_brackets": true),直接点那个高亮括号也能跳 - HTML 标签如
<div>同理,但光标得落在<或>字符上,不能停在div中间
右下角显示 Plain Text,括号逻辑彻底失效
语法识别是所有括号操作的前提。一旦右下角显示 Plain Text,{ 和 } 就只是普通字符,Ctrl+M 和 Ctrl+Shift+M 全部失能。
- 点击右下角语言名,手动选成
JavaScript、Python、HTML等对应模式 - .ts 或 .vue 文件常被误识别为
Vue Component或Plain Text,需手动切换或安装对应语法包 - 正则表达式字面量里的
{(如/\{a\}/)可能被忽略,可临时切到RegExp语法模式再试
Ctrl+Shift+M 选不中内容?先查括号是否“合法”
Ctrl+Shift+M(macOS 是 Cmd+Shift+M)会选中整个块(含括号),但它依赖实时语法解析:光标必须在括号内或其上,且括号需闭合、不在字符串/注释中、语言模式正确。
- 光标停在
}右边或{左边 → 不触发;必须在{上,或{和}之间的任意位置 - 括号不闭合(如少一个
})、或混在字符串里("{a: 1}")→ 不会被识别为代码括号 - 想剔除括号只留内部?先按
Ctrl+Shift+M,再连按两次Ctrl+Shift+→(Expand Selection to Scope)
嵌套太深时,Alt+← / Cmd+← 比记层数更可靠
多次按 Ctrl+M 在 func([a, {b: [c]}]) 这类混合嵌套里容易丢位置。Sublime 的跳转历史是独立维护的,不依赖括号层级。
-
Alt+←(Windows/Linux)或Cmd+←(macOS)直接回到上一光标位置,适合来回核对结构 -
Alt+→或Cmd+→可前进,比反复按Ctrl+M更不容易迷路 - 真正卡住人的从来不是快捷键记不住,而是光标位置、语法模式、
"match_brackets": true这三者中任意一个没对齐——它们缺一不可,且 Sublime 不给任何提示

















