OS X has been with us for a few years now, and Emacs has been coming along slowly and surely. We must have hit some sort of a tipping point, and there are a whole lot of people working on the problem; the result is that life is getting better and better for the Emacs tribe. This piece opens with a brief sermon on why, if you’re not already using Emacs, you might want to check it out; and then surveys the state of play and the multiple interesting emacses that are out there.
Why Emacs? · Neal Stephenson, successful author, once wrote a book-length essay about operating systems called In the Beginning was the Command Line, which you may well have already read, and if you haven’t, you probably don’t want to unless you actually care about the Meaning of Unix, and so on. I excerpt here from its Chapter 14:
I use emacs, which might be thought of as a thermonuclear word processor. It was created by Richard Stallman; enough said. It is written in Lisp, which is the only computer language that is beautiful. It is colossal, and yet it only edits straight ASCII text files, which is to say, no fonts, no boldface, no underlining. In other words, the engineer-hours that, in the case of Microsoft Word, were devoted to features like mail merge, and the ability to embed feature-length motion pictures in corporate memoranda, were, in the case of emacs, focused with maniacal intensity on the deceptively simple-seeming problem of editing text. If you are a professional writer--i.e., if someone else is getting paid to worry about how your words are formatted and printed--emacs outshines all other editing software in approximately the same way that the noonday sun does the stars. It is not just bigger and brighter; it simply makes everything else vanish.
If you are editing a legal contract and need to track changes, use OpenOffice or Microsoft Word. If you are editing Java source code, use NetBeans or Eclipse. For everything else, Emacs is by a wide margin the world’s most powerful text editor.
Its only serious competitor is the Vi family of editors, which, while lacking Emacs’ infinite power and flexibility, accomplish all conceivable editing tasks with the absolute minimum number of keystrokes (in most cases, one); which is worth something. Also, Vi (or these days, Vim, but you still type “vi” to start it) is pretty well guaranteed to be there on just about any computer you sit down in front of, and pretty guaranteed to work the same way you’re used to. Emacs, on the other hand, is so customizable that it’s usually a certain amount of work to get it going the way you’re used to on a new computer.
ongoing is written entirely in Emacs.
Emacs on OS X · Here are all the different options I know about for running Emacs on OS X.
From Apple · Apple provides a pre-built Emacs; I haven’t tried it but I imagine it works fine.
Use the Source, Luke! · It’s like this:
$ cvs -z3 -d:ext:anoncvs@savannah.gnu.org:/cvsroot/emacs co emacs
$ ./configure --enable-carbon-app --without-x
$ make bootstrap
$ sudo make install
Works fine. The Emacs you get lacks a certain polish, but runs fine. I used that flavor for quite some time without any problems.
Aquamacs · The headline says Aquamacs is an easy-to-use, Mac-style Emacs for OS X, and so it seems; they support standard Mac keystrokes and Asian input methods and so on. I had a little heartburn getting it going, which turned out to be caused by something leftover in one of my preferences files. Anyhow, it has a bunch of add-ons which give you better-looking fonts and some nice customization menus. Also, a lot of syntax-coloring options (for Perl, Java, Lisp, and so on), that I hadn’t got around to figuring how to turn on, just turned on and worked without me asking.
The only downside is that it makes it easy to do a ton of customization (fonts, colors, and so on) per mode; so that you can edit your Perl code in Courier New on a grey background, while doing your blog in Lucida on pale yellow. And when you switch from one to the other, there’s a noticeable lag while the font shifts, which makes the window resize. This is kind of disturbing since Emacs does everything else that it does pretty well instantly. Also, I’m having a bit of trouble getting copy/paste from Safari into Emacs, but I suspect this is just an early-release buglet.
Anyhow, I’m typing this entry right now in Aquamacs.
Emacs.app · This is over at Sourceforge, where the headline is NeXT/OpenStep Emacs for GNUstep and OS X. As of now, it’s just a developers’ pre-release, source-code only, and I had to jump through some hoops to get it to compile.
It’s trying hard to be a really good Mac citizen, with OS X standard popups for file opening and font/color selection and so on. I’ve only spent a couple of minutes with it, but initial impressions were good.
I couldn’t say, at the moment, which of these branches of the Emacs tree is going to reach highest. But it’s great that they’re doing what they’re doing.