Ask HN: Easiest way to get a modern IDE with Vim style key bindings

1 points by somethingAlex ↗ HN
I have a team member who loves vim, but hasn't taken the time to setup additional tooling for autocomplete, jump to definition, auto-formatting, continuous error checking, etc... I'm beginning to think this is his bottleneck because he is talented, but works at about 70% of the pace of others. Particularly, the lack of jump / peek definition and autocomplete.

I'm asking this question because I want to suggest a solution, one where he doesn't have to touch his mouse but he also gets modern IDE features without a ton of setup. I used vim in the past and was able to get these features for Python but I remember it was rather arduous. Later, I just switched the VS code and decided I didn't really mind moving my mouse.

The language is primarily Typescript. The platform is OS X. I'm hoping there is some combination of (IDE + extension) or (vim + config) where he can just try it out and get the listed features out of the box.

7 comments

[ 5.1 ms ] story [ 25.5 ms ] thread
Since you've mentioned using VSCode, this may be what you're looking for

https://github.com/VSCodeVim/Vim

Yeah I ran across that in my research. I suppose I'm looking for someone with personal experience to vouch for something. Have you used this yourself?
Tell him about coc.vim - it uses the same language server plugins that VS Code uses so jump to definition, hover etc are all possible. Coc.vim is really popular and becoming quite robust and easy to set up. There's no need for VS Code with it.

I use it and develop in Typescript, TSX, etc. I've never found it lacking when compared to VS Code

Autocomplete and jumping via tags are built in to vim. No plugins or “arduous” setup needed. Search YouTube for tutorials.
It seems that ctags requires you to run a command which builds the index used to jump to the definitions. Does this update automatically so the function I just wrote gets indexed?
You can make it run automatically on save, or make a shortcut to do it from inside vim, or both. A few lines added to .vimrc and installing the widely-used universal ctags or exuberant ctags if not installed ready.
JetBrains products, Eclipse, and Visual Studio for Mac all have vim plugins.

You will probably have better luck on StackOverflow if they still permit questions about tooling and SuperUser if they do not.