服务端阅读 06月2日 00:04
VSCode 快捷键怎么改?自定义键绑定和多快捷键方案切换
VSCode 的快捷键可以完全自定义,还能装不同平台的键位方案(Vim、Sublime、IntelliJ)让肌肉记忆无缝迁移。查看和搜索快捷键Ctrl+K Ctrl+S 打开快捷键设置面板。在这里可以:搜索命令名或快捷键组合修改任意命令的绑定查看冲突(同一个快捷键绑定了多个命令)搜索框里输入命令名(如 "format")或快捷键组合(先按 Ctrl+K 再按要搜索的键),快速定位。修改快捷键两种方式:方式一:面板里直接改。在快捷键面板里找到命令,双击或右键选 "Change Keybinding",按下新快捷键组合。方式二:编辑 keybindings.json。点击快捷键面板右上角的文件图标,打开 JSON 配置:// keybindings.json[ { "key": "ctrl+shift+f", "command": "editor.action.formatDocument", "when": "editorHasDocumentFormattingProvider && editorTextFocus" }, { "key": "ctrl+d", "command": "editor.action.copyLinesDownAction", "when": "editorTextFocus" }, { "key": "ctrl+shift+d", "command": "workbench.view.debug" }]when 条件控制快捷键在什么上下文生效——editorTextFocus 只在编辑器有焦点时生效,避免全局快捷键和终端冲突。常用快捷键调整建议格式化代码:默认 Shift+Alt+F,很多人改成 Ctrl+Shift+F 或 Ctrl+S 时自动格式化(配合 editor.formatOnSave: true)。复制当前行:默认 Shift+Alt+Down,改成 Ctrl+D 更顺手(但 Ctrl+D 默认是"添加下一个选中",改之前想清楚)。删除当前行:默认 Ctrl+Shift+K,可以改成 Ctrl+Shift+D 或其他顺手的组合。切换终端:Ctrl+` 比较远,可以加一组 Ctrl+J。装其他编辑器的键位方案不想一个个改?装键位扩展一键迁移:Vim:装 "VSCode Vim" 扩展,完整的 Vim 键位模拟Sublime Text:装 "Sublime Text Keymap" 扩展IntelliJ IDEA:装 "IntelliJ IDEA Keybindings" 扩展Emacs:装 "Emacs Friendly Keymap" 扩展装完扩展后,Ctrl+K Ctrl+S 面板里会显示对应编辑器的键位方案,可以和默认方案混用。when 条件常用值when 是快捷键自定义的关键——它决定快捷键在什么场景下生效:| when 值 | 含义 ||---------|------|| editorTextFocus | 编辑器有焦点 || terminalFocus | 终端有焦点 || resourceLangId == 'python' | 当前文件是 Python || editorHasSelection | 有选中文本 || inDebugMode | 调试模式中 |组合条件用 && 连接:editorTextFocus && resourceLangId == 'python' 表示只在编辑 Python 文件时生效。导出和同步快捷键VSCode Settings Sync(登录 GitHub 或 Microsoft 账号)自动同步快捷键配置到云端,换电脑不用重新配置。如果不想用云同步,手动复制 keybindings.json 文件也行。