VS Code 中使用 Vim
在 VS Code 中安装 VSCodeVim 扩展后,可以保留 VS Code 的补全、调试和 Git 功能,同时用 Vim 的 Normal、Insert、Visual 模式编辑代码。
适用范围
- 已安装 Visual Studio Code 的 macOS、Windows 或 Linux 用户。
- 希望先学习 Vim 编辑动作、暂时不想切换到纯终端编辑器的用户。
前置条件
准备好 VS Code,并能访问扩展市场。VSCodeVim 的扩展标识是 vscodevim.vim。
操作
- 打开扩展视图:macOS 使用
⇧⌘X,Windows/Linux 使用Ctrl+Shift+X。 - 搜索 Vim,安装发布者为 VSCodeVim 的扩展,然后重新加载 VS Code 窗口。
也可以在已安装 code 命令行工具时执行:
code --install-extension vscodevim.vim
打开命令面板,选择 Preferences: Open User Settings (JSON),加入下面的最小配置。若文件已有内容,只添加这些属性,不要重复最外层的 {}。
{
"vim.useSystemClipboard": true,
"vim.leader": "<space>",
"vim.insertModeKeyBindings": [
{
"before": ["j", "j"],
"after": ["<Esc>"]
}
]
}
vim.useSystemClipboard让复制和粘贴默认使用系统剪贴板。vim.leader将<leader>设为空格,方便后续学习自定义映射。- 插入模式连续输入
jj会回到 Normal 模式;仍可随时使用Esc。
处理快捷键冲突
VSCodeVim 默认会接管部分 Ctrl/Cmd 组合键。若希望某个快捷键继续由 VS Code 处理,在用户设置中加入 vim.handleKeys。例如保留 VS Code 的查找快捷键:
{
"vim.handleKeys": {
"<C-f>": false
}
}
false 表示把该组合键交还给 VS Code;其他按键仍由 Vim 模式处理。
验证
打开任意文本文件后:
- 按
Esc,光标应显示为块状;此时按j、k、w只移动光标,不会输入文字。 - 按
i进入 Insert 模式并输入文字,再输入jj或按Esc返回 Normal 模式。 - 选中一段文字后按
y,在其他应用中粘贴,确认系统剪贴板已生效。
评论