To-do list for this site

How did you get in here? How did you get inside the sausage factory? Watch your fingers.

Things I am doing to spruce this place up as part of yak shaving my academic writing workflow.

  • styling on main page is different
  • fix internal links in RSS (or rely on RSS readers to fix it because it is hard and everyone seems to do it wrong anyway), e.g. the the CDATA trick seems to work.
  • all the heading metadata on overview pages should be a link.

Better HTML HEAD metadata

HEAD documents the recommended tags for maximising social spread and suchlike from a website.

Social interactions

Some of these are hard to do with my static site — which is to say, hard like ordinary dynamic websites are, not frictionless like my humble static site is.

twitter/github icons

better code highlighting

For new themes, via

Alternatively for my theme it is just in the config.

these are both bia highlight.js; I could use the server-side pandoc-based solutions such as pygments or chroma. Explanations of those by Maëlle Salmon : These look harder to integrate into Rmarkdown posts, but ok for native hugo

Also code folding.

steal tricks from gwern

especially regarding linkrot


Embedded serverless comments would be nice comments.


<script src="" async></script>


theming and integration work required.


A.k.a. ActivityStreams 2.0. I think this standard is real and is sometimes claimed to subsume comments and webmentions 🤷‍♂ It looks like there is variable effort involved in enabling the suite of features and widges here. Verifying my id in ActivityPub is chill. All the mutual sharing of data involves cryptographical signing etc. Out of scope for now.

knit to markdown

Instead of to HTML. Many benefit in terms of having better hugo hooks. michael toth’s solution.

update: hugodown supports this.

  • figures lose caption
  • !\[(.*)\]\(/images/([^[]*)\) to ![$1](../images/$2) updates horribly broken paths
  • rename files, purge .html
  • theme updates
  • test docs r.Rmd and levy_processes.Rmd.
  • knitpages.R, knit and are points to intervene.

Eliminate extraneous javascript

Mathjax in particular.


render citations as data? Or at least link to the .bib file? See how radix does this?

export coins metadata?

or higwire metadata

Why are citations showing up as a sub div of the last div? Can I change that?

make and explicit header?

e.g google custom search

<script async src=""></script>
<div class="gcse-search" data-personalizedAds="false"></div>


media pipeline

Via page bundles?

I would need to restructure my code for that

Generic image processing goes


Put images in front matter, or even page bundles. The latter looks fragile and harder to navigate; I’ll probably settle for a minimum-viable option that puts images in header metadata. I wonder if there is a pandoc pipe that could make that easier, or if I should do it with a python markdown parser e.g. with a TreeProcessor, or a BeautifulSoup parser, or the syntax tree-friendly Mistletoe.

minimal deps lightbox for all my beautiful high-res images. (dependency free) (old jquery) (markup integration)


I would also like to display most popular pages; that would be fun. But I will wait for netlify to release their API rather than getting prematurely excited about that.

If I want to work around in the mean time, Jim Nielson shows how.

NEtlify API spec Python client community

Mathjax update


Sort by certainty etc


Google’s accelerated mobile pages. Seems a huge effort.

Look nice

I made my own theme; it has various wonderful features such as being simple and easy to understand. However, it has the problem that I am no graphical designer.

I was using Merriwether which is not great; the punctuation annoys me.

TRialling Garamond.

TBD: choose a monospace font so I can control the size better.

margin notes