Skip to content

IdeaVim

A Vim emulation plugin that brings Vim keybindings and editing to JetBrains IDEs.

Stars
10.3k
Forks
816
Licence
MIT
Language
Kotlin
Last update
4 days ago
Type
App

What it is

IdeaVim is a plugin for JetBrains IDEs such as IntelliJ IDEA, PyCharm and WebStorm that adds Vim-style modal editing. It lets you use Vim modes, motions, registers, macros and mappings inside the IDE. You can customize it with a ~/.ideavimrc file, similar to a ~/.vimrc.

  • Editing code with Vim motions, text objects and modes inside IntelliJ IDEA or another JetBrains IDE
  • Mapping a key such as <leader>d to an IDE action like Debug
  • Recording and replaying macros and using registers as in Vim
  • Keeping your Vim settings in ~/.ideavimrc and loading them in the IDE
  • Using Vim regex search and search/replace within the IDE

Great for

  • Developers who already know Vim and want its keys inside a JetBrains IDE
  • Users of any JetBrains IDE listed in the README who want Vim-style editing
  • People who want to map keys to IDE actions via <Action> mappings
  • Users who want to share one Vim configuration file across editors

Not ideal for

  • People who have never used Vim and prefer standard IDE shortcuts, since the modal style has a learning curve
  • Users who need every Vim built-in function or option, because the README says not all are supported
  • Users of non-JetBrains editors, since this plugin only runs in JetBrains IDEs
Step-by-step guide: how to use IdeaVimInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    See the README

    You'll need: A JetBrains IDE

    Clone the repository

    git clone https://github.com/JetBrains/ideavim.git
  2. 2

    Run it

    • Open Settings | Plugins in your JetBrains IDE and install IdeaVim.
    • Enable or disable Vim via Tools | Vim in the menu.
    • Create a ~/.ideavimrc file to add your own settings and mappings.
    • Test a simple mapping, such as map Q gq, to confirm your config loads.
  3. 3

    Get the most out of it

    • Use the :actionlist command to find IDE action IDs and map them with <Action>.
    • Use the IdeaVim: track action IDs command to discover action IDs as you work.
    • Install IdeaVim plugins listed in the project wiki to add features such as surround and multiple-cursors.
    • Set XDG config at $XDG_CONFIG_HOME/ideavim/ideavimrc or use IDEA_VIM_CUSTOM_VIMRC to control where config is read.
    • Use the Early Access Program only if you accept lower stability for newer fixes.

Downloads

Strengths

  • Official JetBrains project with an MIT license and a public bug tracker
  • Supports many Vim features including modes, marks, macros, registers and regexps according to the README
  • Configuration through a standard ~/.ideavimrc file that can be reused from Vim

Trade-offs

  • The README says not all Vim built-in functions and options are supported
  • Early Access builds may be of lower quality than typical beta software, according to the README
  • Some behaviour is IDE-specific, and the README points to a separate autocmd doc for differences

How it compares

ProjectStarsTypeLevelUpdatedBest for
ideavim (this)10.3kAppbeginner4 days agoDevelopers who already know Vim and want its keys inside a JetBrains IDE
Vim15.2kAppbeginner6 days agoDevelopers who already know Vim and want its keybindings in VS Code
TranslationPlugin11.9kAppbeginner17 days agoDevelopers who read code or documentation in a language they are less comfortable with
vim-airline18kAppbeginner22 days agoVim users who want a clearer status bar without heavy configuration
fzf83.9kDev toolbeginner8 days agoCommand-line users who often search file names or command history
coc.nvim25.1kAppintermediate10 days agoVim or Neovim users who want autocompletion and language features similar to VS Code

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.