OSCON: Instantly Better Vim

The last session I attended on Friday was Damian Conway’s “Instantly Better Vim" presentation. Damian’s sessions are always popular and I made a point to head over the to the session room early. Unfortunately he was given a positively tiny room for a session that well over 100 people wanted to attend. It took a few minutes for staff to magically make a larger room available and even then there were dozens of people standing near the walls of the room. Damian is as popular as ever!

At the risk of dating myself, I’ve been using Vi/Vim for over 20 years and think that I’ve gotten pretty good at it. Yet, there are things that annoy me about it and that there are always new things to learn about Vim, so I was jazzed to see this presentation. I was expecting to not blog this session, since it is really hard to blog what Damian says — his amazing presentations move at a breakneck clip that all but the best bloggers in the world can follow. Not I! But, Damian, saved the day by making his presentation available to anyone!

If you use Vim and want to improve your Vim configuration to become much more effective, then download his presentation:


I would recommend going through this presentation step-by-step and evaluating each section to see if you want to change your setup to include his recommendations. As soon as I have some time, I plan to do exactly that. Let me give you one example to show you the amazing things he conveyed in this session:

Temporal undo: This feature saves your edit history even after you close a buffer (stop editing a file)! You can go back to any version of a given file, since you turned this feature on! If you want to go back 30 seconds in time, type:

:earlier 30s

This trick allows you to make discrete steps in your edit history, without carefully having to undo and later redo a buffer. You can move back and forth with great ease. To go forward, use:

:later 30s

Stunning! You can use seconds (s), hours (h) and days (d) as time increments. This is almost like having a version control system inside your editor. :) Please download his presentation for details on how to turn this amazing feature on.

My favorite quote from Damian about using and configuring Vim:

Vim is infinitely configurable, as long as you’re infinitely evil!

Some of the things that Damian does in his configuration gives people the willies, but they work well and make Vim an even more awesome editor. I highly recommend going through the slides to learn from the master. Thanks for the awesome presentation and thanks for being an aswesome cat herder before the session, Damian!

  1. oscon posted this