#!/bin/sh set -eu TLD="$(cat aux/tld.txt)" PROJECT_UC= while getopts 'n:N:m:o:' flag; do case "$flag" in n) PROJECT="$OPTARG" ;; N) PROJECT_UC="$OPTARG" ;; m) MAILING_LIST="$OPTARG" ;; o) OUTDIR="$OPTARG" ;; *) exit 2 ;; esac done shift $((OPTIND - 1)) assert_arg() { if [ -z "$1" ]; then echo "Missing $2" >&2 exit 2 fi } assert_arg "${PROJECT:-}" '-n PROJECT' assert_arg "${MAILING_LIST:-}" '-m MAILING_LIST' assert_arg "${OUTDIR:-}" '-o OUTDIR' if [ -z "${PROJECT_UC:-}" ]; then PROJECT_UC="$PROJECT" fi td -H | cat aux/workflow/preamble.md - | sed \ -e "s:@PROJECT_UC@:$PROJECT_UC:g" \ -e "s:@PROJECT@:$PROJECT:g" \ -e "s:@MAILING_LIST@:$MAILING_LIST:g" \ -e "s:@TLD@:$TLD:g" | pandoc \ --toc \ --highlight-style pygments \ --toc-depth=2 \ -s \ --metadata title="$PROJECT_UC - TODOs" \ --metadata lang=en \ -r commonmark \ -w html \ -H aux/workflow/favicon.html \ -H aux/workflow/style.css | sed \ -e 's:::g' \ > "$OUTDIR/TODOs.html"