#!/bin/bash set -euo pipefail if [ "$(pwd)" != "$HOME/src/zisp" ] then echo >&2 "Call this from within the Zisp source root." exit 1 fi md2ext=fenced-code-blocks,highlightjs-lang,tables md2ht() { src=$1 dst=$2 if ! [ -f "$src" ] then echo >&2 "File not found: $src" continue fi echo "$src -> $dst" title=$(sed 's/# //; s/&/\\&/; s_/_\\/_; q' "$src") if [ "${src##*/}" = index.md ] then nav='^ Up' else nav='^ Up' fi { sed "s/__TITLE__/$title/" html/prelude.html echo "" sed "1 a $nav" < "$src" | markdown2 -x "$md2ext" echo "" } > "$dst" } md2ht html/index.md html/zisp/index.html cp html/style.css html/zisp/ shopt -s globstar for file in notes/*.md docs/**/*.md do dest=html/zisp/${file%.md}.html mkdir -p "${dest%/*}" md2ht "$file" "$dest" done for file in docs/**/*.txt do dest=html/zisp/$file mkdir -p "${dest%/*}" cp "$file" "$dest" done rsync -a html/zisp tk:/var/www/html