i'm not sure why i didn't do this earlier
So the experiment here is to see if I can just hack Blosxom and make it read XML files instead of the standard text files it reads.
I don’t want it to use folder-based categories, either, and would prefer to use tags, but I’m not entirely sure how that’s going to work. Hmmm. This could be the start of a beautiful disaster.
#meta commentary ##2007 Sep 13
I have since once again abandoned this project. I don’t know why I’m so obsessed with the idea of launching my own blog engine when there are plenty of existing ones already. I just want to be able to control the syntax, I guess. This is one of the things that I like about Blosxom and Mephisto: you can essentially define your own XML tags and have the engine translate it into standard XHTML. So, for example, in Blosxom, I created my own pseudo-XML language that was supposed to mimic XSL. I also co-opted the <l>
tag from the draft XHTML 2.0 spec, which I think is much better semantically than using tags when writing out song lyrics or displaying a poem. Plus it’s way less cumbersome than writing <span class=”line”>…</span>
(which is what I had Blosxom translate it to anyway.) Mostly, these were shortcuts for otherwise lengthy pieces of HTML. For example, there is a plugin that implements the <blosxom:amazon-buybox markdown="1">
tag, which translates an ASIN into several lines of code. There are also shortcuts for including a link to a Google search page, and for including a link to the iTunes Music Store. I didn’t play around with Mephisto’s text filters too much, but it wouldn’t be too hard to implement similar features. I admit, it’s all really syntactic sugar, and I don’t particularly miss them all that much, but still.
One of the features that I kind of liked from my hand-rolled static-page generating blog engine was the fact that you could abstract all the links from the entry and create a link log from them. I used a tag similar to <a>
, except with a few extra attributes, like so:
`
`
Actually, I was really using the blog
namespace instead of bx
, and dubbed my kludgery of XHTML as blogml. Unfortunately, blogml is actually already taken, but since I ended up abandoning my kludgery and utilizing Blosxom, I forgot about it for a while. Because of my strange fascination with XML tags, I used the blosxom namespace for all the shortcuts I created (hence, <blosxom:amazon-buybox>
, <blosxom:itms-link>
, etc., etc.) But typing out blosxom all the time is extremely cumbersome, so I ended up shortening it to bx
.
After a while, I got the itch to write my own blog engine again, except this time it would generate dynamic pages. I thought that I would call it bx, since my first conception was literally a down and dirty (and incomplete) hack of the Blosxom code base. Bx is actually the abbreviation for biopsy, which I thought would make a good name for a blog engine. (In medicine, because most of the terms are Greek or Latin, and they tend to be painfully long, everything can be abbreviated by taking the first few letters and appending an “x” to it. So dx means diagnosis, tx means treatment, rx means prescription, cx means culture, etc. (See the Evil Resident’s list of the more common abbreviations that are found in medical documentation)