egg

mdxi on 2003-11-21T08:12:59

My personal site (the one linked to over on the right) has been nagging at me for quite some time. I wanted to make it easier to find stuff, and also to have autogenerated "last mod" times on things that should have them. Tonight I finally sat down and banged out a really ugly solution that does a fairly good job for a first whack.

One thing I *didn't* want was a CMS; I wanted an intelligent index page generator. And I didn't want dynamic (that is: via apache) generation; I wanted something I could call from the shell script that rsyncs my websites, and have it all happen at once.

So I sat down and whipped up a mini-markup language and an exceedingly stupid parser to handle it, /et viola/, new homepage which doesn't involve typing any HTML.

It can do headers, file import, lists (all 3 HTML types), tables, links, and escape its special characters. It generates validated, properly-nested XHTML1.1, and the parser weighs in at 5K of very ugly, uncommented code. Oh, and its markups can be nested due to abusing $_ and reading from filehandles that are controlling loops in new and exiting ways :D

It is, due to the vagarities of my project naming scheme, called "egg", and it's the last thing the world needs, but it was fun.


Non-HTML markup...

LTjake on 2003-11-21T12:37:11

Textile is meant to do similar things. There's also a perl module out there to do the conversion.

Re:Non-HTML markup...

mdxi on 2003-11-21T15:30:32

Now that you point me at it, I remember seeing that some months ago. I wanted a little more automation on certain things, though, as this is a one-trick pony instead of a general-purpose markup thinger.

I do have one of those coming though.