Sometimes I find myself wanting to record my thoughts on a particular subject, and as much as a way for me to find them again, I thought I would publish them to this blog. I believe a blog is essentially static content, and I like to edit things in Emacs, which rules out the majority of blogging solutions I know of, so I wrote my own.

The blog is statically generated, using an augmented version of xhtml as the input format. The drafts are merged into a post template, in standard xhtml, to produce a site that can be rsync'd to my web host. Creating a DTD for for my augmented xhtml was surprisingly time consuming. I found the description of the xhtml modularization system somewhat vague, if not inconsistent. I translated the DTD to a Relax NG compressed schema using Trang so that nXML mode could validate it.

The merging of the templates is done using SBCL and CXML . The generator maintains a database of posts, so that it can generate the index page, etc, and uses Elephant . The whole site can be re-generated from the input post files, so I can use Git to manage the posts, and don't have to worry about backing up the the database.

It has taken about a day to get this far, which sounds, quite reasonable to me. There are a number of features that I aim to implement as time permits; an Atom feed, tags and comments being the main priorities.


Comments


Thanks for taking the time to contribute.

All comments are moderated and I reserve the right to remove comments for any reason, including abusiveness, illegality, and spam links.

Comments are plain text, with blank lines seperating paragraphs. Anything that looks like a URI will become a link. Any HTML will be escaped and appear as you type it in.

(optional, will not be published)
(used to link your comment back to you)