This site is written with neovim on Antergos XFCE in Markdown. It’s converted to html using pandoc and hosted by Nearly Free Speech. I publish with a combination of GNU Make and Git. If you want to peruse the source, there’s a mirror of the site on Gitlab.
I’ve written a short script in my
~/bin folder called, fittingly enough,
acdw.1 When I want to write a new post, say, a poem, I type
in my shell and it opens an editor with the date pre-populated. I write out my poem in Markdown, give it a title, save and quit – and the script automatically adds [lineblock marks] to poem posts (for line breaking purposes). If I want to write a post for a different day, I just append a date string (
date, so whatever
date can parse works):
acdw blog 'last week'
(If the file is empty, it’s automatically deleted by the script.)
My build process is fairly straightforward: I have a number of source files in
src/ (fittingly) that get processed by pandoc into the requisite files in
pub/. I use a couple of filters that do things like convert blockquotes to epigraphs or automatically links posts written on the same day to each other that tailor the generated site to my needs. I build everything using a Makefile that generates recipes based on what groups I have posts for and spits everything out into
pub/, ready for publishing.
Since this site is a git repository, publishing is just a
git push away.2 Before I pull the trigger, though, I make sure the site looks alright by running
make serve, which runs a PHP server rooted in
pub/ so I can poke around. (It’s a little less useful now that I’ve moved to almost exclusively absolute linking.) Once I’ve verified it’ll be okay, I
git push it to my public site https://www.acdw.net and my Gitlab mirror.
- I’ve got a gist of it here: ↩
I originally got this tip from a now-defunct website, Nerdess (archive.org link). It’s been so useful I’ve enumerated the basics in a blog post↩