Choosing a text editor is a very personal decision. You grow with your editor, as your editor grows with you. As I use my text editor more and more over the years, I’m constantly constantly learning new techniques for working more efficiently. Some of them stick, others are forgotten. I find that sequences and shortcuts that I most use stay. But just as importantly VIM accommodates my changing needs through configuration, plugin, or otherwise.
Most of all, you need a good editor, that you are familiar with.
Why Vim Works For Me
Different jobs require different tools.
Vim also has it’s own set of advantages. It’s very fast at large search and replace operations. It’s infinitely extensible, with plugins that integrate with git, automatically format tables, check syntax. It can be operated entirely over SSH. It’s easily customized. It’s ubiquitous. It’s free. It has a great community of people.
What does it look like?
It actually looks pretty modern!
A Few Caveats
- Steep learning curve.
- Customization is almost requisite
- Not everyone knows how to use VIM, this can be and impediment to working with someone else at your computer.
I actually keep a couple of GUI editors around as I find that have uses for them. There are some tasks that mice are just really good at. TextWrangler works well with really large files. Sometimes I might just it to look at a gigantic CSV alongside the code that’s being used to manipulate it.
Better, Faster, Stronger
Vim is brilliant in how extensible and malleable it is. You can change it by simply installing a new plugin. The setup can be entirely scripted.
As an editor, Vi has really led the way on a great many conventions. Vim came after Vi and offers a superset of features. Having different modes of editing, and keyboard navigation, are some of the most fundamental parts. It wasn’t just that it was early to introduce these features, but that they’ve been perfected over many years.
Vim has always been light and nimble. It’s fast to boot (unless you load it down with tons of plugins)
Vim comes standard on all modern builds of Linux and Mac OS. You can jump right into it. It’s really helpful to be able to navigate a bare bones installation of Vim, even if you don’t do it as well as with a customized version.
Another huge piece of portability, is remote access. Vim works marvelously over an
ssh connection. I can do remote work on a server far away, as though it were local. This is really great for travel.
If you want to give it a go, you can try out my configuration found on github.
I Frequently Use Other Editors
Vim is a tool. It’s very useful to know. But sometimes, I actually prefer to work in a different application. My other favorite editor at the moment is Atom, and I’m using it right now to with this entry. It has great markdown support and integrates with system spell checking. At the end of the day, Vim has a load of features and advantages that can help you work faster. But, you must always use what works for you!