VSCode安装Vim插件后Shift+Alt上下箭头快捷键失效如何解决
解决方案
这一问题是Vim插件默认优先级高于VSCode原生快捷键导致的,可通过以下两种方式解决:
方法1:配置Vim插件不接管目标快捷键
打开VSCode的settings.json文件,在原有Vim相关配置中新增vim.handleKeys项,指定对应快捷键直接走VSCode原生逻辑:
// 原有Vim配置保留,新增如下内容 "vim.handleKeys": { "<S-A-Up>": false, "<S-A-Down>": false }
保存配置后重启VSCode即可生效。
方法2:手动映射快捷键到原生功能
如果方法1未生效,可直接在Vim各模式的非递归绑定中,将快捷键映射到VSCode原生对应命令:
// 普通模式绑定 "vim.normalModeKeyBindingsNonRecursive": [ { "before": ["<S-A-Up>"], "commands": ["editor.action.copyLinesUpAction"] }, { "before": ["<S-A-Down>"], "commands": ["editor.action.copyLinesDownAction"] } ], // 插入模式绑定 "vim.insertModeKeyBindingsNonRecursive": [ { "before": ["<S-A-Up>"], "commands": ["editor.action.copyLinesUpAction"] }, { "before": ["<S-A-Down>"], "commands": ["editor.action.copyLinesDownAction"] } ], // 可视模式绑定 "vim.visualModeKeyBindingsNonRecursive": [ { "before": ["<S-A-Up>"], "commands": ["editor.action.copyLinesUpAction"] }, { "before": ["<S-A-Down>"], "commands": ["editor.action.copyLinesDownAction"] } ]
如果需要对应多光标功能,将上述配置中的命令替换为editor.action.insertCursorAbove和editor.action.insertCursorBelow即可。
内容的提问来源于stack exchange,提问作者anindiangeek
相关产品推荐
相关产品推荐

