
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
How to get it
- 1
See the README
You'll need: A JetBrains IDE
Clone the repository
git clone https://github.com/JetBrains/ideavim.git - 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
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
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| ideavim (this) | 10.3k | App | beginner | 4 days ago | Developers who already know Vim and want its keys inside a JetBrains IDE |
| Vim | 15.2k | App | beginner | 6 days ago | Developers who already know Vim and want its keybindings in VS Code |
| TranslationPlugin | 11.9k | App | beginner | 17 days ago | Developers who read code or documentation in a language they are less comfortable with |
| vim-airline | 18k | App | beginner | 22 days ago | Vim users who want a clearer status bar without heavy configuration |
| fzf | 83.9k | Dev tool | beginner | 8 days ago | Command-line users who often search file names or command history |
| coc.nvim | 25.1k | App | intermediate | 10 days ago | Vim 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.