Cover Image for Trying Out VIM

Trying Out VIM

Did it start out of boredom? It may have been the desire to be faster. Maybe it was the constant stream of tweets and blog posts about VIM. Could programming be quicker and simpler with VIM? I was stepping out on my editor (Sublime Text 2) and looking at the greener VIM grass.

What did I get myself into?

After reading about VIM and watching VIMcasts, shit got real. I made the "mistake" of talking about my intentions to a co-worker, Lori. Lori, ever the one for a new challenge threw down the gauntlet.

One week of using nothing but VIM. No other editor.

Could I do it?

I remembered back to the time when I was seven. My dad thought the way to teach was through immersion. That's why I ended up in the Tennessee river; water over my head, trying not to drown. …But I learned how to swim, thanks Dad.

So I took a deep breath, printed this cheatsheet out and fired up vim tutor. I started with the smallest .vimrc possible instead of a curated list of plugins. I disabled the arrow keys and imagined my mouse had caught ebola.

It was a bit tough

Until the muscle memory kicked in, remembering all the commands slowed me down. Moving my hand to hit the escape key all the time added milliseconds to my game. Modes and leaders warped my brain a little bit. Thank goodness for team challenges! Every command I couldn't remember I found on my cheatsheet or Lori would help me out.

I kept at it.

It did get better

Muscle memory finally kicked in. The commands that required more effort to do; I cheated a bit. I swapped the useless caps lock key out for the left control key. I used Karabiner to change some keys. I changed the left control to send the to the escape key unless combined with another key.

One week turned into one month. I got quicker. I enjoyed my editor for the first time since I found Emmet. I started adding plugins into my .vimrc whenever I had a bottleneck or pain point.

Going forward

I've been dabbling with tmux for screen and window splits. I started using a bash script to setup projects. After a week, I switched over to tmuxinator since it didn't play nice with FISH shell.


I tried VIM and I liked it so much I wrote this. Give it a shot, maybe you will too.

More Resources