I like vim. I use vim. I have customized the pants off of vim. There’s nothing on this earth, short of my own skin, that is more molded to me than my vim config.
And that’s the problem.
If you want to use vim without customizing it, think again.
If you’ve used a modern text editor like VSCode, Vim’s defaults are gonna feel atrocious.
Right away you’ll notice there’s no syntax highlighting, no line numbers. You turn those options on, and the the colors are appalling. So you find a good color scheme, but it doesn’t work right out the box. You have to start fiddling with a few other settings and - oh no! You’re customizing vim! Stop!
Honestly, I tried for a while. I really tried. I kept my customizations very minimal. “Just a few standard settings, no plugins”.
But the siren song of frictionless writing was too strong. I wanted to blur the division between my thoughts and the text that flowed into the computer. I installed a few essential plugins, and it was amazing. Whenever a new bit of friction showed up in my process I could solve it with a plugin that some nerd saint had made a decade ago.
This was salvation. Typing nirvana. I went all in.
One year later
Below is my vimrc at the time of writing. I just cleaned it up recently by the way. So it’s shorter than usual.
Don’t read it (please), just scroll by in amazement at how someone could spend so much time configuring a text editor.
Hours, then Days
As time went on, I got more and more finicky with my expectations. I wanted every speck of frustration wiped out of my text editing process.
I’ve always been obsessive about this type of thing, but vim spoiled me. It showed me how perfect text editing has the potential to be - if you only just train the computer well enough.
So I spent more and more time training vim into my perfect editor.
At this point, I have easily sunk over 24 hours into tweaking and configuring vim. That’s not including the time it took to learn it in the first place, or the amount of time I’ve spent thinking about it, which is definitely not negligible. It’s a weird form of procrastination, because it seems to promise productivity returns that far outweigh the initial investment.
I don’t really know how much productivity it has actually bought me. Surely some at least. What I do know is that it has cost me productivity many times when a tiny nuisance or random idea derailed me from my work and sent me off on a wild goose chase for a new plugin.
You might be thinking, “Damn, this guy sounds like a drug addict with a text editor.”
I’ll admit it seems strange to be so involved with the way I type. But considering that a) I have nerdy tendencies and b) typing is the direct channel through which a lot of my creativity and livelihood flow through, I don’t think my concern is totally ridiculous.
Oh, but anyway, let’s get back to why you shouldn’t learn vim.
Don’t do it
Vim is elegant. It will turn the physical act of typing into a dance of the fingers, but it won’t make your output any better.
Vim is fast. It will speed you up in 1000 minor ways, but slow you down massively in a few major ways.
Vim is fun. It will make you enjoy typing more as you refine it for your unique needs. And in the process, it will distract you from what really matters.
Vim is powerful. There’s truly no end to what it can do, but that endless possibility will keep you always searching for me.
Vim is addicting. Once you use it, it’s hard to go back to the old way of typing. And even if you do, you’ll never forget how much power you’ve lost.