Hacking Vim 7.2

A couple years ago, I wrote a brief review of the book Hacking Vim by Kim Schulz. The publisher, Packt publishing seemed to like my review so they sent me the second edition of the book, Hacking Vim 7.2 to review as well.

The latest edition of the book, released just earlier this year, has been revised and expanded to address some new features of Vim 7.2. The good thing about buying such a book is that Vim releases are infrequent and always backwards compatible. There’s very little chance of this book becoming redundant and outdated, unlike that Visual Basic 4 bible you have sitting on your shelf.

What is Vim?
For the uninitiated, Vim is an open source editor that has been used by programmers and developers for many years. Although it doesn’t look fancy, it is actually one of the most powerful pieces of software out there in terms of customizability and flexibility. However, unlike your basic text editor, it is difficulty to just jump in and start using it as there is a bit of a learning curve. This book is not for beginners, as it assumes an understanding of the basic editing modes of Vim. If you’ve never used Vim before, the book has a few suggestions on getting up to speed — most noticeably, by going through the vimtutor program that comes with most installations of Vim.

Topics Covered
The first part of the book gives a fairly complete history of the Vim lineage, from the original UNIX based ed editor to Vi, to it’s derivatives, and finally to the Vim we now know and love. Then the book dives right into basic personalization tweaks with an overview of the different configuration files — what they do and where they go. I consider these simple tweaks essential for any semi-serious user of Vim to create their own personalized .vimrc file.

For a lot of readers, the first two chapters may already been enough of a customization but the real meat of the book lies in the latter chapters, to help moderate users become power users with navigation tweaks, recipes to help with code completion and project management. If one follows all of these suggestions, Vim can turn into a full-fledged IDE.

With the sheer number of recipes and scripts, I would suggest implementing them a little at a time in order to get used to using them. Going through all the changes at once may be a bit overwhelming.

The last few chapters of the book teach take Vim customization to the next level by giving a tutorial on how to write your own scripts and configuration files. Most may not need to go into this much detail but if there is functionality that you can’t find a script for, then writing your own may be the only choice. The good news is Vim scripting is not too difficult, especially with the tutorial provided in this book, which is one of the reasons there is such a large community supporting it.

Recommendation
If you’re a user of Vim and would like to work more effectively and become a Vim guru, this book is definitely for you. If you’re already a Vim poweruser but feel there is some functionality lacking, this book is a great place to learn how to write your own Vim scripts to contribute to the Vim community.

If you’ve never used Vim before but would like to start using it, this book may not be your first choice; you may wish to try out Vim for a bit first to see if you actually enjoy the style of editing, and if so then pick up this book to go to the next level.

Popularity: unranked [?]

Leave a Reply