Repolode
VSCodeVim

VSCodeVim/Vim

Vim emulation for Visual Studio Code, bringing Vim modes, motions, and keybindings into the VS Code editor.

Stars
15,228
Forks
1,473
Open issues
1,918
Last commit
yesterday

What is it?

VSCodeVim is a Vim emulator that runs as an extension inside Visual Studio Code. It lets developers who already know Vim use its modal editing model, including Normal, Insert, Visual, and Replace modes, along with familiar motions and operators, without leaving VS Code.

Beyond core emulation, the extension supports custom key remapping per mode, a .vimrc remap subset, and optional Neovim integration for running Ex commands. It also emulates several popular Vim plugins such as EasyMotion, vim-surround, vim-commentary, and vim-sneak, and offers multi-cursor support via gb and cmd/ctrl-d.

The extension is installable from the VS Code Marketplace or Open VSX, and its behavior is configured through VS Code settings such as useSystemClipboard, useCtrlKeys, and highlightedyank options.

Key features

  • 01Normal, Insert, Visual, and Replace modes with familiar Vim motions and operators
  • 02Custom key remapping per mode, including non-recursive mappings
  • 03Emulation of plugins such as EasyMotion, vim-surround, and vim-commentary
  • 04Multi-cursor editing via gb or the VS Code add-cursor shortcut
  • 05Optional Neovim integration for Ex commands and limited .vimrc remap support

Use cases

  • Developers who want Vim keybindings while using VS Code for debugging and extensions
  • Remapping keys to match a personal Vim workflow inside VS Code
  • Teams standardizing on modal editing across editors

Quick start

  1. 1

    Install the VSCodeVim extension from the VS Code Marketplace or OpenVSX

  2. 2

    On macOS, disable press-and-hold so key repeat works (run the README defaults commands, then restart VS Code)

Things to know

  • On macOS, key repeat needs a system setting changed and a logout or restart.
  • On Windows, VSCodeVim takes over control keys unless you change the useCtrlKeys and handleKeys settings.

Topics

FAQ

What is Vim?
Vim emulation for Visual Studio Code, bringing Vim modes, motions, and keybindings into the VS Code editor. VSCodeVim is a Vim emulator that runs as an extension inside Visual Studio Code. It lets developers who already know Vim use its modal editing model, including Normal, Insert, Visual, and Replace modes, along with familiar motions and operators, without leaving VS Code.
Is Vim free to use? What license does it have?
Vim is open source under the MIT license. Check the license terms before using it in commercial products.
Is Vim still maintained?
Actively maintained. The last commit to Vim was on Nov 6, 2026.
What can I use Vim for?
Developers who want Vim keybindings while using VS Code for debugging and extensions Remapping keys to match a personal Vim workflow inside VS Code Teams standardizing on modal editing across editors
How do I install Vim?
Install the VSCodeVim extension from the VS Code Marketplace or OpenVSX On macOS, disable press-and-hold so key repeat works (run the README defaults commands, then restart VS Code)
Where can I get Vim?
The source code and installation instructions are on GitHub: https://github.com/VSCodeVim/Vim

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects