Questo sito web

Ultima modifica

Questo spazio sul web nasce senza un'idea precisa dei contenuti che ospiterà, se ce ne saranno. Le finalità sono sperimentali e di esplorazione personale. Il sito è costruito con saait, un generatore minimalista di pagine web statiche in linea con la filosofia suckless, e ospitato su sourcehut pages.

Editing

I post sono redatti in markdown ed esportati in html con lo script seguente, che converte i frammenti LaTeX in MathML prima della pubblicazione: in questo modo non c'è bisogno di eseguire javascript lato client.

#!/usr/bin/node

const { spawn } = require('child_process');
const temml = require('temml');

const r = /(\${1,2})(.+?)\1/gs;

let input = '';
process.stdin.on('data', c => input += c);
process.stdin.on('end', () => {

  input = input.replace(r, (_, d, c) =>
    temml.renderToString(c.trim(), { displayMode: d.length === 2 }));

  const smu = spawn('smu');
  smu.stdin.end(input);
  smu.stdout.pipe(process.stdout);
});

Build

In website/config.cfg ci sono i valori di default delle variabili usate da saait, modificabili nei file di configurazione delle singole pagine: la dichiarazione math = Temml.html include i font e i fogli di stile per il rendering dei frammenti LaTeX con Temml.

Per generare il sito in website/output,

cd ~/website
find pages -type f -name '*.cfg' -print0 | sort -zr | xargs -0 saait

Pubblicazione

L'upload della tarball su sourcehut pages avviene con hut, l'utility dedicata:

cd ~/website
tar -C output -cvz . > website.tar.gz
hut pages publish -d tizero.srht.site website.tar.gz