Learn to Haunt

March 02, 2025

Learn Skribe

There's actually nothing to learn really, since SXML is just HTML with parens instead of brackets. And <b> doesn't work---but <strong> does.

And really, who doesn't know html?

I actually don't even remember how I learned html. I know I didn't learn it in school because I remember blasting through all of the material since I was already familiar with the language. I think this is a common experience---nerds just know html.

Haunt Workflow

It actually turns out that haunt serve --watch kind of sucks, since if you make certain errors in haunt.scm it seems to just stop watching.

I suppose now that I'm finished messing with the backend scheme code of the site (for now), it shouldn't be so bad. I still need to add .skr files to the scheme mode of Emacs though.

I'm still not sure if I'm going to stick with skribe. It seems like the point of a markup language is to focus on actually making the content instead of programming the website, but at the same time, I always end up having to escape back into html whenever I write a markdown document with any amount of complexity. In addition, sxml is much more readable than html, and thanks to Emacs' scheme editing tools it's actually very pleasent to write. I have to get some sort of spell-checker though (or not, who cares. As if anyone other than me will ever read this).

I'm actually not really entirely sure how to get tls working with haunt serve, or if it's meant mostly for testing and not for actually deploying the site. I'm not even sure if you're technically meant to have your haunt files on the computer serving the website.

After browsing the awesome-haunt page, it looks like the workflow is to create the site locally, and then deploy with rsync to a web server which probably runs apache, not haunt serve. Makes sense, as it probably doesn't have nearly the security features of a mature http daemon like nginx.

I've set up a Guix web server now with nginx and rsync, which works pretty well, though bootstrapping tls is kind of a pain. It's purely because I haven't run a webserver for a year or two, and the last one I ran was OpenBSD, but GNU Guix and OpenBSD have very different world-views. Maybe now I'll actually write some content though (yeah right).