Vim Learning Resources

09 Jul 2012

I’ve been a Vim user for a long time but only in the last year I actually started to really use it. No, I don’t mean to say that I spend years of my life with an opened editor on my workspace and just stared at it. What I really mean is that those early years of my Vim usage and knowledge mostly consisted of h, j, k, l, :wq and :%s/replace/this/g. That and syntax highlighting was pretty much Vim for me.

One of the things that makes Vim so great for me is that it doesn’t force you to use or understand something. I was able to get work done with just the basic knowledge I had. But then came that moment when I stumbled upon a blog post about Vim’s text objects and my jar dropped on my keyboard: “So that’s how it works?!”

Vim has a steep learning curve and there are bumps on the road where you can get stuck. And I know a lot of people do get stuck. You may like it there, being stuck, but keep in mind: sometimes it’s just a little tip that can get you forward. A small push that gives you an AHA! moment. Thankfully there are a lot of these available everywhere, though sometimes they are not that easy to find, which is the reason I’m writing this post.

The following is a list consisting of screencasts, video tutorials, blog posts, tips and tricks concerning Vim and how to master it. The items on the list are the ones that got me forward when I was stuck on my way to Vim wizardry (mind you, I’m not there yet, not even close but I’m wearing the nice hat anyway). I bet someone can find some use in this.

Video Tutorials

vimcasts.org: Everybody who’s starting to use Vim nowadays knows about this site and rightfully so. Vimcasts is a great resource when learning Vim. Drew Neil teaches you Vim in 35 screencasts of top notch quality. Also, I hear his book is great too, as are his workshops.

Derek Wyatt’s Vim videos: Bookmark this, now! I mean it! This collection of video tutorials is one of the most hidden gems in the Vim galaxy and I don’t know why. Derek Wyatt has an immense knowledge of Vim, his videos are fun to watch and packed with Vim knowledge, explaining topics interesting to beginners and experts alike. Watch them!

PeepCode - Smash Into Vim: PeepCode is known for excellent screencasts and the two videos about Vim are no exception to the rule. If you want to invest some money in your mastery of Vim: this is the way to go.

Blog Posts

Coming Home To Vim: This post by Steve Losh pops up on Hacker News from time to time and always gets lots of positive feedback. It’s one of those posts that made me ‘get’ what text objects are and what ‘speaking to the editor’ is all about. Totally worth the read, especially if you have the same background as Steve, coming from a different editor but determined to dig into Vim.

Vim: revisited: In this post called Vim: revisited Mislav explains how and why he finally “got” Vim, how his approach to text editing changed through Vim and what to keep in mind when trying to do the same thing as he did. The ‘Essential plugins’ section at the end is a good starting point of you feel you’re missing out on some features when using Vim.

Why, oh WHY, do those #?@! nutheads use vi?: “Learning an editor, master it, put work into it — are you crazy? Why would someone do that? We’re talking about a text editor, for god’s sake!” Well, read this post, learn the answers to your questions and gain some knowledge concerning vi and Vim.

Vim Text Objects: The Definitive Guide: If you have used ciw, di”, dat in Vim before but never really found out what those commands mean and how someone can actually memorize them: read this post by Jared Carroll on Vim’s text objects.

Stack Overflow

Another way of getting a great insight into the usage of Vim is by reading through the most upvoted answers tagged with ‘Vim’ on stackoverflow. The questions themselves might not sound interesting to you at first sight, but digging the answers is worth it most of the time. Check out the top two of those questions and read the first answers to get a taste of what’s waiting for you:

What is your most productive shortcut with Vim?: The first answer to this question is something you should keep in your bookmarks toolbar: lots and lots of information about Vim and the editing philosophy behind it. Also: further down on the page are cool mini-screencast-gifs.

How do I indent multiple lines quickly in vi?: Check out the second answer to this question as it demonstrates in a fascinating way how flexible Vim is when it comes to solving problems.

Vim Tips

Vim Tips Wiki: This is one of the all time greats. What was formerly known as the ‘Tips’ section on vim.org is now a wiki. That means there are thousands of tips concerning Vim, vimrc files, plugins and everything else connected with Vim in any way plus comments and updates.

Best of Vim Tips: This might not be the prettiest of all websites, but if you keep digging through this one you might find one or two treasures waiting for you. This was one of the most upvoted tips in the old Vim.org tips section. Probably because it contains the knowledge of five hundred tips combined.

Tools & Tutorials

Vivify: Vim looks ugly? Well, it shouldn’t. Check out Vivify. This site lets you preview thousands of Vim colorschemes without the need to download.

Vim Cheatsheet for Programmers: There are a lot of Vim cheatsheets floating around on the web and I don’t know if there is another one better than this one. All I know is that this one was pinned to the wall next to my screen for years.

Vim Recipes: A huge collection of Vim recipes ranging from ‘Quitting Vim’ to ‘Extending Vim with Scripts and Plugins’. Always worth a visit.

Help Yourself!

Open Vim and type in :help. This may be the most important command in Vim you’ll come across, it certainly is the most helpful. Especially when looking for specific information: e.g. :help global. And if you’re just starting out and don’t know how to type in commands into Vim you should type this command into your shell: vimtutor