Ex Bibliotheca

The life and times of Zack Weinberg.

Sunday, 28 April 2002

# 9:45 PM

It turns out that Emacs has two three-way merge facilities, and the one I didn't try is a lot better in terms of showing you what the situation is. Unfortunately it's got a totally brain-dead user interface: it matters which pane is active when you type commands. Fixing this would appear to take considerable hacking. Grrr.

To use it, I'd also have to figure out the undocumented "gnuserv" interface (for getting a running Emacs instance to do stuff) well enough to make the merge facility play nice with Perforce, which may be a serious pain. But it might well be worth it. How much do I feel like hacking Emacs Lisp?

# 1:45 PM

Cringe-inducing filkage.

# 1:15 PM

Series of bizarre dreams, the only one of which I remember involved me trying to read a book which was done entirely in embroidery, words and all. There seemed to be a picture on each page. The content of the book was rather similar to the Dictionary of the Khazars (which I never did manage to finish...)

Unsurprisingly, Emacs does indeed have a three-way merge facility, but it lacks many of xxdiff's abilities; in particular it is not nearly as good at showing me enough context to figure out what needs to be done. I must resist the temptation to hack it up and make it better.

# 4:30 AM

not impressed

The Postal Service gave me two slips of paper with tracking numbers on them when I mailed my tax returns. They have a web form where you can enter the number and be told where the item is. The Federal return came up as "delivered" within forty-eight hours. But for about a week, punching in the number for the state return gave me "We've never heard of that". Then it changed to this:

Your item was accepted at 1:37 pm on April 15, 2002 in BERKELEY, CA 94704. Status is updated every evening. Please check again later.

and it still says that today, nearly two weeks later. I doubt it's gotten lost; much more likely that whoever delivered it neglected to scan the bar code, or that their database is still out of date. But it doesn't fill me with confidence, either.

three way merge

Sounds like something that might be illegal in Georgia, but it isn't. It's the process of combining changes made by Alice with different changes made by Bob to the same program. It tends to take days and be extremely tedious. There is good software to help out, but not quite good enough for my tastes: in particular, the best program I've found (xxdiff) does not have a facility to edit the merged file as I go along. This means I have to write down all the edits I need to make, finish the merge, then launch an editor. Slow, error-prone. Yuck. The author says he doesn't want to turn xxdiff into an editor, but I think that's a lame excuse.

It just now occurred to me to wonder if Emacs has a three-way merge facility. That would solve that problem...