DEV Community

Discussion on: We want to feature your voice on DevDiscuss! This week's topic: Vim

Collapse
 
rpoirier profile image
Reese Poirier

After maybe a decade of using Vim as my primary editor, there's nothing else I'd rather use on the command line. I have a lengthy and complex Vim config that I can't live without. It's partly built myself and partly cribbed from the wisdom of others over years of use. And I think that that is Vim's biggest weakness. It can do most things an IDE can do but not out of the box and only after a long time spent reading documentation and setting up configs, plugins, etc.
Naturally there's a learning curve to it, but a cheat sheet for Vim's arcane commands and hotkeys can get you started right away. By contrast learning all Vim is capable of and getting it to work just the way you want it to is something you can only do by spending many hours of quality time using and reading about it.
To help others get on their feet more quickly I keep a copy of my vim configuration on GitHub and have it heavily commented. I recommend that people copy only those parts of it that they understand why they would want them to begin with and look for more later when they find Vim wanting.
All that being said, if my primary dev environment weren't command line only I'd abandon Vim for an IDE in a hot minute.