Ctrl+M(Windows/Linux)或Cmd+M(macOS)可双向跳转匹配括号,但光标必须精确落在(、)、{、}、[、]任一字符上;若停在内部、空格或非括号位置则无效,需配合语言模式正确、英文输入法及"match_brackets": true设置。

Ctrl+M(Windows/Linux)或 Cmd+M(macOS)能直接跳转到配对括号,但前提是光标必须“踩在括号字符上”——停在(、)、{、}、[、]这六个符号的任意一个上,否则完全没反应。
光标没落在括号字符上,Ctrl+M 就不会触发
Sublime 的括号跳转不是“靠近就跳”,而是严格绑定到括号字符本身。比如写 if (x > 0) {,光标停在 x 上、空格里、甚至紧贴 ( 左边的空白处,Ctrl+M 都不会响应。
- 用
Ctrl+←或Ctrl+→(跳词)快速把光标挪到最近的括号字符上,再按Ctrl+M - 鼠标直接点击已高亮的匹配括号也能跳,但前提是
"match_brackets": true开着且主题支持高亮样式 - HTML 标签如
<div>也适用,但光标得落在<或>字符范围内,不能停在标签名中间
右下角显示 Plain Text 时,括号功能基本瘫痪
语法识别是括号跳转和高亮的前提。一旦右下角显示 Plain Text,Sublime 就不启动括号匹配引擎,Ctrl+M 和 Ctrl+Shift+M 全部失效。
- 手动点击右下角语言名,选成
JavaScript、Python、HTML等对应模式 - 正则表达式中的括号(如
/(\d+)/)可能被误判,可临时切到RegExp语法模式再试 - 某些 Vue 单文件组件中,如果 Sublime 错识别为
Vue Component而非HTML或JavaScript,括号也可能不匹配
Mac 用户常按错键位:Ctrl+Shift+M 不是标准快捷键
macOS 版 Sublime 默认使用 Cmd+Shift+M 而非 Ctrl+Shift+M。很多从 VSCode 切过来的用户会惯性猛按 Ctrl 组合,结果毫无反应。
- 打开
Preferences → Key Bindings,搜索expand_selection,确认keys字段写的是["super+shift+m"](super=Cmd) - 若发现被插件覆盖成
["ctrl+shift+m"],直接改成["super+shift+m"]并保存 - 中文输入法下
Cmd+M常被 Raycast、Karabiner 或系统级工具拦截,切英文输入法再试
选中内容时括号是否包含在内,取决于光标落点
Ctrl+Shift+M(或 Cmd+Shift+M)默认行为不统一:光标落在括号字符上时,它会选中整个配对块(含括号);光标落在括号内部(如 { a: 1 } 中的 a: 1)时,才只选内容。
- 想稳定获取“纯内容不带括号”,先按
Ctrl+Shift+M,再连按两次Ctrl+Shift+→(Expand Selection to Scope),通常能跳过外层括号边界 - HTML 标签如
<p>text</p>不属于原生括号结构,Ctrl+Shift+M无效,需装BracketHighlighter插件并启用Select Content - Python 装饰器(如
@decorator)或三重引号字符串里的伪代码,语法解析器基本不处理,这时候别调设置,直接用Ctrl+M手动跳转更可靠
真正容易被忽略的是:括号跳转和高亮都依赖 Sublime 的语法分析器,而这个分析器对非标准写法(比如 JS 模板字符串里嵌套多层括号、或 Python 三重引号中的伪代码)基本不处理——它不是坏了,是压根没看。


















