ctrl+shift+m(windows/linux)或 cmd+shift+m(macos)选中括号内内容需满足光标在成对括号内、语法识别正确、括号闭合无误三个前提,否则会失效。

Ctrl+Shift+M(Windows/Linux)或 Cmd+Shift+M(macOS)是选中括号内内容最直接有效的方式,但必须满足三个前提:光标在成对括号内部、文件语法识别正确、括号本身闭合无误。
为什么 Ctrl+Shift+M 按了没反应?
这不是快捷键坏了,而是 Sublime 没法确定“该选哪一对”。常见卡点包括:
- 光标停在右括号后面、左括号前面,或字符串/注释内部——
Ctrl+Shift+M只响应“括号结构内”的位置,不响应“视觉上靠近” - 文件右下角显示
Plain Text——此时括号匹配逻辑基本失效,需手动点击语言名,设为JavaScript、Python等对应模式 - 括号不配对,比如漏写
}或多写一个)——Sublime 会退回到最近可识别的合法对,结果不可控;可用Ctrl+Shift+P→ 输入Find Unmatched Brackets快速定位 - 插件劫持了快捷键——打开
Preferences → Key Bindings,搜索expand_selection或brackets,确认绑定未被覆盖
想只选中间内容,不带括号?
原生 Ctrl+Shift+M 默认就是“只选内容、不含括号”,但有例外:
一款AI工具,主要用于使用 Codex CLI 进行深度网络搜索,适用于需要多源综合分析的复杂查询。当 `web_search`(Brave)返回结果不足,或用户……时使用,适合需要提升相关任务效率的用户。
- 光标落在左括号
(或右括号)字符上时,它可能选中整个配对块(含括号),取决于当前语法解析强度 - HTML 标签如
<div> 不算括号结构,原生不支持;需装插件 <code>BracketHighlighter启用Select Content功能 - 更稳的纯内容方案:先按
Ctrl+Shift+M,再连按两次Ctrl+Shift+→(Windows/Linux)——通常能跳过外层括号,停在内部文本边界 -
Ctrl+Shift+Space(Windows/Linux)或Cmd+Shift+Space(macOS)——光标在括号内连续按,依次触发:内容 → 括号对 → 外层函数/对象 → 整个作用域 - 这个命令基于语法 scope,比括号匹配更可靠,尤其在 JSX、Vue 模板中处理
{ }表达式时 - 想反向收缩?按
Ctrl+U(Undo Selection)比方向键微调更精准,避免误扩到注释或字符串里 - 注意:如果光标刚好卡在换行符或空格上,
Ctrl+Shift+Space可能跳过当前括号层——把光标往左挪一个字符再试 - 选单双引号内容:用
Select Between Quotes命令,建议绑定快捷键,例如在用户键位文件加:[ {"keys": ["ctrl+shift+q"], "command": "select_between_quotes"} ]注意:只认英文'和",中文引号或转义引号(如\")不支持 - 模板字符串 ``:原生无支持,
BracketHighlighter插件提供Select Content右键项,或临时切到RegExp语法模式再试Ctrl+Shift+M - 自定义配对符号(如 LaTeX 的
$...$):必须靠插件或手动写expand_selection的args,例如{"to": "brackets"}不起作用,得用{"to": "scope"}配合自定义语法定义
嵌套太深,怎么一层层往外扩?
别反复按 Ctrl+Shift+M,它在嵌套场景下行为不稳定。推荐用作用域扩展命令:
引号、模板字符串、自定义符号怎么办?
Ctrl+Shift+M 不处理引号,Expand Selection to Scope 对模板字符串 `` 也常失效。实际做法是:
真正容易被忽略的是:括号选择不是“视觉操作”,它完全依赖 Sublime 当前加载的语法高亮规则和括号配对引擎。哪怕只是少一个 , 导致 JSON 解析失败,整个文件的 Ctrl+Shift+M 都可能降级为局部字符匹配——所以出问题时,先看右下角语言名,再查括号配对,最后才动快捷键配置。










