VSCode的Vim模拟器:在VSCode中享受Vim操作

16次阅读

可在vscode中通过安装vim扩展、启用基础模式、配置键绑定、开启多光标操作及调试命令失败问题,实现原生Vim体验。

如果您希望在vscode中复用vim的键盘操作习惯,但又不希望离开熟悉的编辑器界面,则可以通过安装和配置vim模拟插件实现原生般的vim体验。以下是具体实施步骤:

本文运行环境:macBook air,macOS Sequoia。

一、安装Vim扩展

Vim模拟功能依赖于VSCode官方市场中的Vim扩展,该扩展由vscodevim团队维护,提供完整的Normal、Insert、Visual、Command等模式支持。

1、打开VSCode,点击左侧活动栏的扩展图标(或使用快捷键Cmd+Shift+X)。

2、在扩展搜索框中输入Vim,找到名称为Vim、发布者为vscodevim的扩展。

3、点击“安装”按钮,等待安装完成并点击“重新加载”以激活扩展。

二、启用基础Vim模式

安装后默认即启用Normal模式,但部分行为需手动开启以匹配经典Vim逻辑,例如按键映射保留与Esc退出一致性。

1、按下Cmd+, 打开设置界面。

2、在搜索框中输入vim.useCtrlKeys,将其值设为true

3、继续搜索vim.easymotion,将其设为true以启用快速跳转。

三、配置自定义键绑定

VSCode原生快捷键可能与Vim操作冲突,可通过修改keybindings.json实现精准覆盖,例如将Ctrl+C在Normal模式下映射为复制而非中断命令。

1、按下Cmd+Shift+P打开命令面板,输入并选择Preferences: Open Keyboard Shortcuts (jsON)

2、在右侧面板中添加如下json块:

{“key”: “ctrl+c”, “command”: “editor.action.clipboardCopyAction”, “when”: “editorTextFocus && vim.mode == ‘Normal'”}

3、保存文件,重启VSCode使配置生效。

四、启用多光标Vim操作

Vim扩展支持通过Ctrl+V进入列选模式(Visual Block),配合IA可实现多行首尾同时编辑,提升批量修改效率。

1、在Normal模式下将光标移至目标文本起始列。

2、按下Ctrl+V进入Visual Block模式。

3、使用方向键或j/k向下/向上扩展选区。

4、按下I进入插入模式,在首行开头输入内容,完成后按Esc,所有选中行将同步添加该内容。

五、调试Vim命令失败问题

当输入:执行Ex命令无响应时,通常因插件未完全加载或存在配置冲突,需从运行状态与日志两方面定位。

1、按下Cmd+Shift+P,输入并选择Developer: Toggle Developer Tools

2、切换到console标签页,输入console.log(vimState)检查当前Vim状态对象是否存在。

3、若报错ReferenceError,说明Vim扩展未正确初始化,需禁用其他冲突扩展(如emacs Keymap、sublime Text Keymap)后重装Vim扩展。

text=ZqhQzanResources