ctrl+m(windows/linux)或cmd+m(macos)是sublime原生跳转匹配括号的唯一快捷键,但光标必须精确落在(、)、{、}、[、]任一字符上才生效;停在内部、旁侧、空格或字符串/注释中均无效,且需语法模式正确(非plain text)、"match_brackets":true启用、英文输入法激活。

Ctr+M(Windows/Linux)或 Cmd+M(macOS)是唯一原生方式,但必须光标精确落在(、)、{、}、[、]字符上,否则完全不响应。
光标必须“踩在括号上”,不是旁边也不是里面
Sublime 不做模糊匹配:光标停在 if (x > 0) { 的 x 上、空格里、甚至紧贴 ( 左边一个位置,Ctrl+M 都静音。它只认括号字符本身的 scope。
- 用
Ctrl+←或Ctrl+→(跳词)快速把光标挪到最近的括号字符上再试 - 鼠标悬停时若看到高亮配对(前提是
"match_brackets": true),直接点那个高亮括号也能跳 - HTML 标签如
<div> 同样适用,但光标得落在 <code> 或 <code>>字符上,不能停在div中间右下角显示 Plain Text 就一定失效
语法识别是括号跳转的前提。一旦右下角显示
Plain Text,Sublime 就不启动括号匹配引擎,Ctrl+M和Ctrl+Shift+M全部失效。- 点击右下角语言名,手动切换成
JavaScript、Python、HTML等对应模式 - Vue 单文件组件中若被误识别为
Vue Component而非HTML或JavaScript,括号也可能断链 - 正则表达式里的括号(如
/(\d+)/)可能被误判,可临时切到RegExp语法模式再试
Mac 用户注意 Cmd+M 被系统或输入法劫持
macOS 下
Cmd+M是系统级“最小化窗口”快捷键,Sublime 默认已重映射,但中文输入法(如搜狗、Rime)或安全工具常会拦截。- 打开
Preferences → Key Bindings,搜索jump_to_matching_bracket,确认keys字段是["super+m"](super= Cmd) - 若发现被插件覆盖成
["ctrl+m"]或空数组,直接删掉冲突项 - 临时切英文输入法再试——这是最快验证是否被劫持的方法
Ctrl+Shift+M选不中内容?别怪快捷键,先查括号状态这个操作依赖实时语法解析:光标必须在括号内或括号字符上,且括号必须闭合、不在字符串/注释中、文件语言模式正确。
- 光标停在
)右边或{左边 → 它不识别“邻近”,只认“内部或其上” - 括号不闭合(如少一个
}),或混在字符串里:"if (x > 0) { }"中的括号不会被选中 - 想连括号一起选?原生不支持;可在用户键位中加一条:
{"keys": ["ctrl+alt+b"], "command": "expand_selection", "args": {"to": "brackets"}}
真正卡住人的从来不是快捷键记不住,而是光标位置、语法模式、
match_brackets开关这三者中任意一个没对齐——它们缺一不可,且 Sublime 不给任何容错提示。 - 点击右下角语言名,手动切换成











