HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
JetBrains
ideavim
Kotlin2013–2026
JetBrains / ideavim

ideavim

IdeaVim – A Vim engine for JetBrains IDEs

24Distinct people
25Mentions
0Explicit recommenders
10.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

IdeaVim – A Vim engine for JetBrains IDEs

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year25 dated mentions

Observed mentions: 2013-03-27 15:07:45 UTC to 2026-10-29 13:20:05 UTC.

012342013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments20132014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 3 mentions; 3 submissions, 0 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC404
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC000
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC000
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC303
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC202
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC202
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC404
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC303
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC000
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC101
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC101
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC101
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC330
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC101

What Hacker News says

25 sources
(not the person you are replying to) I am primarily an Emacs user, using the standard key bindings (and a whole bunch of custom bindings and functions I've built on top of it over the decades, ctrl remaped to caps lock and no Emacs pinky so far). But I am also 80% a NeoVim and Vim user for about 15 years now, and I consider myself quite proficient with Vim keybindings. The Emacs emulation is truly incredible, but the fact that Vim implementation quality varies wildly from environment to environment is extremely frustrating to me. For example, the jupyterlab-vim plugin is so jarringly broken in a handful of ways that it completely knocks me out of the flow of whatever I was doing when I encounter those emulation failures. IntelliJ's idea Vim plugin is a pretty decent one, but even there I have encountered the occasional issue [1][2][3]. Ot
Read the rest
herwise, I strongly agree with your point about learning one way to work with text and being able to leverage it most places. Sort of a tangent, but I think this is why Emacs users tend to end up trying to do as much in Emacs as possible: It's not really the keybindings but the fact that everything in Emacs is a text buffer. Emacs owns the input and the output, and because everything in Emacs operates on text, you can do most everything in most every mode, to most any buffer content. One example of how powerful this can be is the ability to press a key and use dabbrev-expand to autocomplete shell input I'm typing based off the shell output of a prior command. 1: https://youtrack.jetbrains.com/issue/VIM-569 2: https://youtrack.jetbrains.com/issue/VIM-636 3: https://github.com/JetBrains/ideavim/pull/33
In Emacs Turns 50
Code navigations can be improved in a plenty of ways. I use JetBrains' IDEs daily, but most points can be applied to other IDEs/editors. Some things that helped me to become a lot more efficient: - Vim. Since you mostly edit code, not write it, it is reasonable to be in the editing mode by default, with a full keyboard of shortcuts you can use, not only ctrl/alt combinations. I use IdeaVim[1] plugin for Vim emulation. - Never use your mouse. Keyboard actions are faster and more consistent once you get used to it. IDEs and editors are highly customizable and should allow to bind almost any action. - Get rid of tabs, keep 1-3 active buffers in your vicinity. And then use ctrl+tab or ctrl+e to switch between them. - Learn tricks for code navigation: jump to definition/usage/implementation, search file/class/symbol. - Learn tricks for text na
Read the rest
vigation: pretty much any decent tutorial on Vim navigation will do. [1]: https://github.com/JetBrains/ideavim
In Show HN: We are building an open-source IDE powered by AI
Simply not true. Actually Jetbrains IDEs have IMO one of the best if not the best VIM emulations in all IDEs, IdeaVIM is awesome. For example, you can have your own custom "vimrc", they call it ".ideavimrc" which can also read your normal .vimrc but I prefer to keep it separate. Once in the .ideavimrc, ideavim has emulation for probably the most popular vim plugin (vim-surround) and also vim-multiple-cursor and commentary.vim plugins, you just have to enable them... set surround, etc... see more at: https://github.com/JetBrains/ideavim But to me the best part of it is doing my own keymappings to execute IDE actions which sometimes don't even have a shortcut or menu and are just accessible by "mouse" you can do stuff like: :map <leader>r :action Refactorings.QuickListPopupAction<CR> (refactor this popup) :map <leader>z :action ChangesView.
Read the rest
Revert<CR> (git revert dialog) :map <leader>f :action Tool_External Tools_Flake8 (run flake8 external tool) supports imap, vmap as well in case u just want to trigger in those modes. etc... this will let you use the ANY IDE action with just the keyboard and most dialogs in jetbrains IDE support CTRL+N/P for next/prev navigation in panes... not to mention you can filter most of them just by typing whatever The fact IdeaVIM exists is probably the biggest reason I use and pay for Jetbrains IDEs, all the VIM goodness + IDE convenience.
In Learning Vim incrementally (2010)
https://github.com/JetBrains/ideavim for any readers interested. It IS much better than when I tried it. It parses your vimrc with and matches simple patterns to support the subset of features it does support but it doesn't really have an interpreter although one was discussed https://youtrack.jetbrains.com/issue/VIM-669 Which means no plugins for example or complex viml. Presumably this would simply be ignored not broken. Another approach for a different environment that seems more interesting https://github.com/lunixbochs/ActualVim I don't use sublime so I can't report on how optimal it is the idea of using an embedded vim instance is certainly interesting.
In History and Effective Use of Vim

Showing the 15 most recent of 25 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.