VSCode中选中{}或[]内内容最稳方式是用“Select Between Brackets”命令,光标需落在括号字符上,支持JavaScript/Python等语言模式,不支持纯文本;连括号一起选则用Ctrl+Shift+↑(Windows/Linux)或Cmd+Shift+↑(macOS)。

VSCode 里怎么用快捷键选中 {} 或 [] 包裹的全部内容
直接按 Shift + Ctrl + P(Windows/Linux)或 Shift + Cmd + P(macOS),输入「Select Between Brackets」,回车——这是最稳、最通用的方式。VSCode 自带这个命令,不需要装插件,也不依赖光标是否在括号内:只要光标落在任意一个 {、}、[、] 上,它就能自动识别并选中成对括号之间的全部内容(不含括号本身)。
常见错误是误按 Ctrl + Shift + → 或其他文本扩展快捷键,那些只按单词或行操作,对括号结构无效。
为什么有时候「Select Between Brackets」没反应
通常有三个原因:
- 光标没落在括号字符上——必须停在
{、}、[、]其中之一,不能在括号中间的空格或换行符上 - 当前语言模式不被支持——比如你在纯文本(Plain Text)模式下,VSCode 不知道哪些是合法括号;切到
JavaScript、Python、JSON等有语法定义的语言模式即可 - 括号不匹配或嵌套过深——如果代码里有未闭合的
{,或者嵌套超过 10 层,VSCode 可能放弃解析,此时命令会静默失败
想连括号一起选中?用 Expand Selection 替代
如果需要把 { 和 } 也包含进选区,别用「Select Between Brackets」,改用 VSCode 默认绑定的 Ctrl + Shift + ↑(Windows/Linux)或 Cmd + Shift + ↑(macOS)——这是 editor.action.smartSelect.expand 命令。
它的行为更智能:第一次按,选中当前 token;再按一次,往外扩一层,直到覆盖整个括号块(含括号)。但注意,它依赖语法树,所以在 JSX 或模板字符串里可能跳过某些层级;而「Select Between Brackets」始终只认字面括号配对,更可靠。
自定义快捷键让操作更快
默认命令名太长,每次从命令面板找很慢。建议在 keybindings.json 里加一条快捷键:
[
{
"key": "ctrl+alt+b",
"command": "editor.action.selectBetweenBrackets",
"when": "editorTextFocus && !editorReadonly"
}
]
这样按 Ctrl + Alt + B 就能一键触发。注意别和已有快捷键冲突(比如 Git 插件常用 Ctrl + Alt + G),冲突时 VSCode 会在按键提示里标黄警告。
嵌套括号场景下,连续按两次这个快捷键不会自动跳到外层——它每次只处理光标所在位置最近的一对。要选外层,得先把光标移到外层括号上再按。


















