Skip to content

VSCodeVim

Vim keybindings and modes inside Visual Studio Code, as a VS Code extension.VSCodeVim/Vim

Stars
15.2k
Forks
1.5k
Licence
MIT
Language
TypeScript
Last update
7 days ago
Type
App

What it is

VSCodeVim is an extension that makes Visual Studio Code behave like the Vim text editor, so you can edit text with Vim's keyboard commands and modes. People use it when they already know Vim and want those habits inside VS Code. The README describes it as a Vim emulator rather than real Vim, and it supports settings, key remapping, and a .vimrc file.

  • Edit code in VS Code using Vim motions, operators, and modes
  • Remap keys such as a double-j to Escape in insert mode via settings.json
  • Set a leader key and custom normal-mode bindings
  • Emulate common Vim plugins such as surround and commentary

Great for

  • Developers who already know Vim and want its keybindings in VS Code
  • People who want to customize keys with settings.json remappings
  • Users who want to load parts of an existing .vimrc into VS Code

Not ideal for

  • Users who have never used Vim and want a simple editor, since the modal keys have a learning curve
  • People expecting full Vim feature parity, because the README calls it an emulator and lists some plugin emulations rather than the full set
Step-by-step guide: how to use VSCodeVimInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Download the app

    You'll need: Visual Studio Code

    Clone the repository

    git clone https://github.com/VSCodeVim/Vim.git
  2. 2

    Run it

    • Install VSCodeVim from the VS Code Marketplace or OpenVSX Marketplace
    • Open VS Code and start editing a file in normal mode
    • Optionally add settings such as vim.leader or key bindings in settings.json
  3. 3

    Get the most out of it

    • Use vim.insertModeKeyBindings and normal-mode non-recursive bindings to create custom shortcuts
    • Set vim.useSystemClipboard to share the system clipboard with Vim yank and paste
    • Use vim.handleKeys to hand specific keys back to VS Code
    • Change cursor shape per mode with vim.cursorStylePerMode

Downloads

Strengths

  • Brings familiar Vim keybindings into VS Code
  • Configurable through VS Code settings and key remapping options
  • Open source under the MIT license with an active issue tracker

Trade-offs

  • Emulation is not identical to real Vim, so some behavior may differ
  • On Mac, key-repeat needs a terminal command and a logout to work properly
  • On Windows it takes over control keys unless you adjust the useCtrlKeys and handleKeys settings

How it compares

ProjectStarsTypeLevelUpdatedBest for
Vim (this)15.2kAppbeginner7 days agoDevelopers who already know Vim and want its keybindings in VS Code
ideavim10.3kAppbeginner4 days agoDevelopers who already know Vim and want its keys inside a JetBrains IDE
pretty-ts-errors14.1kAppbeginner6 days agoDevelopers working in VS Code on TypeScript projects with complex or generic types
git-history13.7kAppbeginner2.1 years agoDevelopers trying to understand why a file looks the way it does
kilocode27.8kAI model / agentbeginner4 days agoDevelopers who want an AI coding agent inside VS Code or JetBrains
vim-airline18kAppbeginner23 days agoVim users who want a clearer status bar without heavy configuration

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.