VSCode 自定义快捷键应编辑用户级 keybindings.json 文件,按 Ctrl+Shift+P 输入“Preferences: Open Keyboard Shortcuts (JSON)”打开;每条规则需含 key 和 command 字段,key 遵循修饰键顺序(ctrl、shift、alt、meta)和大小写规范,可用 when 限定作用域,失效时优先检查命令名、冲突及 when 条件匹配。
VSCode 的键盘快捷键可以直接通过
文件或图形界面修改,但真正稳定、可复用、不被覆盖的方式是编辑 JSON 文件——图形界面改完可能被扩展或更新重置,而手动编辑能精准控制作用域和触发条件。
如何打开并编辑
按
(Windows/Linux)或
(
mac
OS),输入
并回车。这会直接打开用户级的
,所有自定义都写在这里。
不要改默认的
,那是只读的
如果文件为空数组
,说明你还没加过任何自定义键位,直接往里加对象即可
每条快捷键是一个对象,至少包含
、
两个字段
推荐用双引号包裹字符串,避免 VSCode 自动修正时出错
字段怎么写才有效?
快捷键组合必须符合 VSCode 的语法规范,常见错误是空格、大小写或修饰键顺序不对。
修饰键顺序固定为:
、
、
、
(macOS 的
,Windows/Linux 的
)
键名区分大小写:
✅,
❌(大写 P 不触发)
功能键写全称:
、
、
,不能简写为
或
字母键默认小写;想绑定大写需显式加
,例如
绑定的是 Ctrl+Shift+U,不是 Ctrl+U
怎样让快捷键只在特定场景生效?
用
条件表达式可以限定快捷键的作用域,比如只在编辑器中生效、只对 Markdown 文件生效,或仅当有选中文本时才可用。
elasticsearch-9.4.0 win
PHP中文网提供Elasticsearch 9.4.0 Windows 版本压缩包下载解压即用,内置 OpenJDK 无需额外配置 Java 环境。该版本重磅推出原生 Prometheus 支持、正式版 Elastic Workflows 以及基于 NVIDIA cuVS 的 GPU 加速向量索引,大幅提升 AI 检索与可观测性能力。建议前往官网下载,快速体验极速搜索与强大的数据分析功能。
下载
:光标在编辑器内才触发
:仅 Python 文件中生效
:排除只读文件
:适用于搜索框、命令面板等非编辑器输入框
多个条件用
连接,取反用
,注意括号不支持,只能靠空格和运算符优先级
为什么你加的快捷键没反应?常见排查点
多数失效问题不是语法错,而是被更高优先级规则覆盖或条件不匹配。
打开命令面板 →
→ Console 标签页,按你的快捷键,看是否有报错如
检查是否拼错了
名:比如
不是
用
打开快捷键界面,搜索你设的键位,看右侧是否显示“已设置”,以及有没有灰色提示“已被其他命令占用”
某些扩展(如 Vim、Emacs 模式)会接管全部按键逻辑,此时
条件可能被绕过,需要在扩展设置里禁用其键位拦截
重启 VSCode 后再试——部分
表达式在未完全加载时不会生效
最易被忽略的是
条件的隐式依赖:比如你想绑定一个“复制当前行”的快捷键,但没加
,它就可能在终端或侧边栏焦点下静默失败,连报错都不会有。
keybindings.jsonkeybindings.jsonCtrl+Shift+PCmd+Shift+PPreferences: Open Keyboard Shortcuts (JSON)keybindings.jsondefaultKeybindings.json[]keycommandkeyctrlshiftaltmetaCmdWin"key": "ctrl+shift+p""ctrl+Shift+P"f1escapebackspaceescdelshift"ctrl+shift+u"when"when": "editorTextFocus""when": "editorTextFocus && editorLangId == 'python'""when": "editorTextFocus && !editorReadonly""when": "textInputFocus && !editorTextFocus"&&!Developer: Toggle Developer Toolscommand 'xxx' not foundcommandeditor.action.formatDocumentformat.documentCtrl+K Ctrl+SwhenwhenwheneditorTextFocus