如何为VSCode的Vim扩展替代实现ctrl+d功能?
在VSCode Vim扩展中模拟原生Ctrl+D功能的解决方案
针对VSCode Vim扩展多光标无法切回单光标的bug,你可以通过映射Ctrl+D到Vim的*+cgn组合命令来实现类似原生的批量编辑功能,同时还能利用Vim的重复、跳转特性,体验比临时的gg+Ctrl+O好很多。
配置方法
打开VSCode的settings.json,添加以下配置:
"vim.normalModeKeyBindings": [ { "before": ["<C-d>"], "after": ["*", "c", "g", "n"] } ]
功能说明
<C-d>绑定为你熟悉的Ctrl+D快捷键*:精确搜索当前光标所在的单词cgn:选中当前搜索匹配项并进入插入模式,直接修改内容
使用技巧
- 修改完当前项后,按
.即可重复修改下一个匹配项 - 按
n跳转到下一个匹配项,N跳转到上一个,不想修改的可以直接跳过 - 如果只需要选中匹配项而非修改,把配置里的
cgn换成gn即可,操作后保持normal模式
扩展配置(可选)
如果需要在visual模式下也能用Ctrl+D搜索选中的文本并匹配下一项,添加:
"vim.visualModeKeyBindings": [ { "before": ["<C-d>"], "after": ["*", "g", "n"] } ]
内容的提问来源于stack exchange,提问作者nklsla
相关产品推荐
相关产品推荐

