如何让VSCode Vim扩展控制VSCode快捷键?
解决VSCode Vim插件映射到原生命令的问题
你之前的配置思路不对——直接用after模拟组合键<C-1>在VSCode Vim插件里大概率不生效,正确的做法是直接绑定到VSCode的命令ID,而不是模拟按键输入。
下面是你要的三个功能的正确配置,直接放到settings.json里即可:
"vim.normalModeKeyBindingsNonRecursive": [ // 切换到第一个分屏(对应Ctrl+1) { "before": ["<leader>", "h"], "commands": ["workbench.action.focusFirstEditorGroup"] }, // 切换到第二个分屏(对应Ctrl+2) { "before": ["<leader>", "l"], "commands": ["workbench.action.focusSecondEditorGroup"] }, // 打开/切换终端(对应Ctrl+Shift+`) { "before": ["<leader>", "t"], "commands": ["workbench.action.terminal.toggleTerminal"] } ]
关键说明:
- 用
commands字段替代after,直接调用VSCode原生命令,这是最可靠的映射方式 - 如果你需要其他自定义映射,可以自己查找对应命令ID:
- 打开命令面板(Ctrl+Shift+P)
- 输入
Preferences: Open Keyboard Shortcuts (JSON) - 在打开的
keybindings.json中,找到目标快捷键对应的command字段,复制该值即可
内容的提问来源于stack exchange,提问作者MaxxD17
相关产品推荐
相关产品推荐

