Here's some software I've written that might be of use for someone. The useful bits have been cunningly hidden amongst barely amusing junk.


I use jed for all of my numerous text-editing tasks. This is mainly for historical reasons, since in the mid-nineties jed was the only editor I found that had good color support on the Linux console.

Though I'm not sure I'd recommend jed for newbies, it's still a pretty good and extensible editor. Here's some stuff I've written for it.

Modes, last modified 2002-10-21.
This module keeps up a list of buffers, ordered by the last visit into the buffer. This information is then used for a convenient user-interface for switching buffers., last modified 2003-12-09.
A CVS frontend for jed. Supports adding, committing, diffing and updating single files, marking of files and then doing the above operations for all marked files, and doing the operations on whole directories. The user-interface is (IMHO) very nice. For example, you can take a diff of the whole project, mark all files involved in some change (from inside the diff view), and the commit them., last modified 2002-07-21.
A mode for editing Inform files. Provides syntax highlighting and automatic indenting., last modified 2004-01-09.
This is a mode for editing makefiles. The mode provides syntax highlighting (especially for tabs!), and automatic indenting (again for tabs)., last modified 2002-03-20.
This is a (proof of concept) mode for OCaml. It's does decent highlighting, but does a pretty bad job of indenting. Parsing ML really sucks... Then again, I have no idea of how ML code is normally indented. I'll probably rewrite this in the near future., last modified 2001-12-07.
This is a mode for Scheme, which is probably also better than the standard jed Lisp-mode for other Lisp dialects. It highlights all R5RS keywords, and supports the standard Lisp indentation style., last modified 2002-07-21.
This is a mode for XML. It supports proper indentation of XML, and a lightweight syntax highlighting (instead of the rather heavy-handed approach of the standard HTML mode). The indenting routines should cope with most valid XML (though I'm absolutely certain that some things don't work correctly). It also supports automatic closing of tags (bound to C-C by default).


jed-completion-filter-2003-05-28.patch, last modified 2003-05-28.
Adds a new hook, which can be used to filter out undesirable filenames during filename completion (for example CVS directories or Java .class files). See also the README. Tested on 0.99.16.


At one point, I enjoyed writing PostScript by hand. Here are some of the nicer results. They are designed for A4 paper, but might work on Letter if you're lucky., last modified 2002-03-16.
Properly sized cards for Ben Hvrt, a board game by Cheapass Games. One reason for loving Cheapass is that DTP components don't feel out of place in their games. ;-) Only the first two pages (out of 9) are included, since the game is copyrighted. Filling in the cards from an existing copy should be easy for anyone who can use a text editor., last modified 2000-03-12.
A track for a racing board game. Much more popular with my friends than my other attempts at game design. Must be due to the incredible production values of this board! I'll hopefully get around to writing the rules down some day. Until then you can just admire the art.

Pogmap is a program for mapping GMT Games' Paths of Glory games. The program is perl, but the package also contains a PS map used as a template, that's probably the most complex PS I've written. It's also sufficiently featureful to warrant it's own page, instead of trying to cram all the neccessary information here.


msg.tgz, last modified 1999-11-03.
In high school we had a pretty nice computer network, the crown jewel of the which was the server (actually a crappy workstation) running SunOS 4.1.2. Since the system was mainly maintained by the students, lots of knowledge about the system was lost regularly. For various reasons SunOS was exchanged for Linux. Mostly a huge improvement, but a lightweight messaging tool 'msg' (a bit like 'write', only better) was lost, and no-one had any idea of where to find the sources. Since life quickly became unbearable without 'msg', I had to write a replacement.
ttkvm-0.3.1.tgz, last modified 2000-10-04.
This is a VM/emulator for the TTK-91 toy assembler used on an introductory course at the university. It's got a couple of known bugs, and probably a host of unknown ones. I certainly won't be maintaining it. It does run on Unix, though, unlike the official emulator. If someone currently on the course wants to take this off my hands, just email me.
uqmrand.c, last modified 2003-11-03.
A random fleet/team generator for Super Melee in Ur-Quan Masters, the Star Control 2 rerelease. There's also a precompiled Windows binary. Completely untested, mind you.
unithome.tar.gz, last modified 2000-02-10.
A tempo (tempi?) calculator for DiplomacyYou'll feed it standard Judge results, and the program will spit out the tempo gained by the various powers in the game. Such magic! As far as I know, this is the only existing tempo calculator (which should tell you something of how useful this is).