To me vi is zen. To use vi is to practice zen. Every command is a koan. Profound to the user,
unintelligible to the uninitiated. You discover truth every time you use it.
A friend recently told me that he’s going turning to the “dark side” and trying out Emacs. When I asked why, he said the escape key was too far away. I tried dissuading him by saying he hadn’t learned the full extent of Vim’s zen and power (neither have I), but in the end gave wished him good luck.
I recently worked with someone who excelled at Emacs to the point that watching him code was like watching a musician playing an instrument. He mostly used muscle memory to make his fingers dancing across the keyboard. This person inspired me to drop GUI editors and focus on becoming proficient in Vim. The productivity gains, easy to discount at the outset, have been tremendous simply because I spend at least six hours a day inside a text editor. Each keystroke I reduce amounts to seconds which add up to minutes that over weeks accumulate into hours. It’s less time and brainpower I have to exert for mechanically typing code and more time to conceive of good code.
It’s been four months since I’ve been using Vim exclusively. I remember the steep learning curve at the start and the constant temptation to reach for the mouse and arrow keys. But as a novice I discovered that there are legions of Vim users passionate enough to publish helpful articles, create games, and wage crusades in order to convert more heathens.
Articles (in the order I read them):
- Learn Vim Progressively
- The Grammar of Vim
- Learn to Speak Vim – Verbs, Nouns, and Modifiers
- Vim Anti-patterns
- Vim for (PHP) Programmers