I’ve been meaning to start this category of posts for a while, but a recent help call from a
fellow blogger inspired me to kick it off.
I found a great site a while ago called Cool Tools – part of Kevin Kelly’s site. The whole site is moderately mind-blowing. Cool Tools has become one of my daily reads. The whole idea is that he presents tools, all sorts of tools, that either he or someone else has actually used and really finds useful. Kind of a volunteer Consumer Reports, if you will.
Well, I’d like to give nods to a couple of the tools that have made my life easier, and the undisputed champ is VIM.
Back in the day, UNIX programs were given two-letter names whenever possible, because UNIX geeks believe in laziness as a path to power. One of these programs was an editor called (wait for it . . . ) ed. Ed did the job.
Ed was entirely adequate.
Okay, let’s face it, ed sucked. It sucked so bad that I’m not even going to go into why it sucked because I’m afraid I might develop a rash from the memories. Yeah, my hands are starting to itch already. Let’s not go there.
So another editor was written that sucked far, far less, and it was a “visual editor”, meaning you could actually see the text you were working on as you worked on it. The idea was so revolutionary at the time that it deserved a special name. And this visual editor was called ‘vi’.
Vi did the job. No really, it did the job. But once people started using it, they started thinking about ways to improve on it. And many new editors came to be, such as vile, elvis, and the one which has captured my heart in the way only a pornstar who can cook could: VIM (Vi IMproved).
Like any UNIX-type computer program, VIM is not easy to use and has a very steep learning curve. It’s the light side of the force – the path is long and difficult, but it yields greater power than you can possibly imagine. And you don’t even have to get struck down first!
VIM is mostly for writing code, and that includes everything from c and c++ to Visual Basic to HTML. It gives you tremendous power when working with code (or just about any kind of structured text). Things like:
- automatic indenting
- syntax highlighting
- a dozen different clipboards for cutting, copying and pasting
- macro recording
- industrial strength search-and-replace
And it plays really nicely with other UNIX tools too, so you can access other programs from within VIM to increase its power.
Oh yeah, just to pacify the handful of tech geeks who read this – yes, yes, emacs is a profoundly bad-ass editor too. But VIM has never demanded a human sacrifice. I’m just sayin’.