VSCode vim扩展中有没有输入单个字符后直接退出插入模式的快捷键?
VSCode Vim单字符插入后自动退出插入模式配置方案
VSCode Vim扩展没有原生提供该功能,可通过自定义按键映射实现完全符合需求的效果,操作逻辑和r快捷键一致,仅插入字符不删除原有内容,具体配置步骤如下:
配置方法
- 打开VSCode的配置文件
settings.json:可通过快捷键Ctrl+,(Windows/Linux)/Cmd+,(Mac)打开设置页,搜索「settings.json」点击「在settings.json中编辑」进入配置页。 - 添加如下配置项:
{ // 可选:自定义leader键,这里设为空格,可按需修改 "vim.leader": " ", "vim.normalModeKeyBindings": [ // 映射:普通模式按leader+i,在光标前插入单个字符后自动退回普通模式 { "before": ["<leader>", "i"], "command": "vim.eval", "args": { "expr": "feedkeys('i' . nr2char(getchar()) . '\<Esc>')" } }, // 映射:普通模式按leader+a,在光标后插入单个字符后自动退回普通模式 { "before": ["<leader>", "a"], "command": "vim.eval", "args": { "expr": "feedkeys('a' . nr2char(getchar()) . '\<Esc>')" } } ] }
配置说明
- 触发按键可按需修改:把
before数组里的按键组合改成你习惯的即可,比如改成["g", "i"]就可以用普通模式下按g+i触发对应功能。 - 操作逻辑:触发对应快捷键后,输入任意单个字符会直接插入到对应位置,同时自动回到普通模式,无需手动按
Esc。
内容的提问来源于stack exchange,提问作者Sanket Wagh
相关产品推荐
相关产品推荐

