From b03a002bce552485b47d3bb89b5ccd7a0e9b4e26 Mon Sep 17 00:00:00 2001 From: Duncan Wilkie Date: Sun, 30 Jul 2023 07:44:09 -0500 Subject: Forgot to sync this a bunch of times. --- posts/test.html~ | 42 ------------------------------------------ 1 file changed, 42 deletions(-) delete mode 100644 posts/test.html~ (limited to 'posts/test.html~') diff --git a/posts/test.html~ b/posts/test.html~ deleted file mode 100644 index c992573..0000000 --- a/posts/test.html~ +++ /dev/null @@ -1,42 +0,0 @@ -title: Building a Site with Haunt -date: <2023-06-23 Fri> -tags: Programming, Lisp, Web, Emacs, Org ---- -
-

Table of Contents

- -
-

-Hello! This is my first post on this website, which I've created over the last several days with the static site generator Haunt. It's my first time really delving into Web tech; I think for pedagogical purposes it was a really effective choice: I know Scheme already from reading SICP and my use of Guix, and Haunt is sufficiently minimal, low-level, and little-used that I learn a good bit of HTML syntax and have to style things with CSS. Conversely, it does enough that it'll be really easy to maintain once up-and-running with it, much moreso than writing bare HTML. -

- -
-

1. An Overview of Haunt

-
-

-Haunt, fundamentally, views websites as programs (according to the manual). The actual facts on the ground are a little rockier: the documentation hasn't been updated in a long time, and there are undocumented releases on the git repository with extensive, new convenience featues that seem very basic. The fundamental object is the site: a record containing all of the top-level information about the website. Among them are a list of "builder" procedures which synthesize individual pages of the website from input, Scheme code, and external files. The outputs of these builders are "page" objects (something which the command line tells me is deprecated in favor of "serialized-artifacts," which aren't documented anywhere), which are copied into the output directory. There are also "readers," which take as input "posts," blog posts written in a sensible markup format, and output pages representing the posts, alongside corresponding modifications to the site to present a correct aggregation of those posts. Useful, and only in the latest v0.3.0 release, is the publisher argument, which takes a description of how to copy all output pages to a remote. The only method currently is rsync, but that's all that's much better than nothing. -

- -

-The CLI is bare: haunt build to produce output pages, haunt serve to pop the output on localhost:8080 (with --watch to refresh on file changes), and haunt publish to run the publisher on what's been haunt build'ed most recently. -

- -

-Styling is manual, with CSS, unless you would like to build CSS inline style propagation logic into SHTML and rewrite all the Haunt default logic to use it (good idea!). -

-
-
- -
-

2. What I'm Doing With This Site

-
-

-Succinctly, writing about anything and everything which takes my fancy. Some of it may not be for you; I will likely write a fair bit about libertarian politics and Christianity. But that should be orthogonal to the rest of it. Take what you like, and leave the rest. -

-
-
-- cgit v1.2.3