Compared to using an editor like Sublime Text 2, vim is hard. The way one interacts with vim compared to other editors seems about as different as Chinese is to English. Knowing this, why the hell would anyone want to learn it? Here are my reasons:
- Less mouse dependence. I get sore wrists when I use the mouse for extended periods. Proper use of vim avoids the mouse.
- I go from being an expert of my chosen editor to an expert at the most common editor out there. This is important because although 99% of the time I’m not coding in a hurry, when I am in a hurry it’s due to some critical emergency (some website is down) that I must remedy immediately. This means loggin into the server and fixing the issue there. With vim.
- Most important for me is that vim provides a language of commands, not a list of hotkeys. I spend many hours every day writing code. With other editors I’ve tried, after learning their hotkeys I feel I have little way to improve my productivity. Not so with vim.
Don’t take my word for it – Jon Beltran de Heredia has written probably the best explanation of why vim is worth it: Why, oh WHY, do those #?@! nutheads use vi?
Getting comfortable with vim, and getting it into a state I’m productive with has been quite a journey. I’m going to write about my configuration and the reasoning behind it, in the hope that it will be helpful for other people who might decide one day to switch from a ‘modern’ editor to vim.
I’ve got Vim looking exactly how I like it. It now looks better in my opinion (and conveys more useful information) than Sublime Text 2.