aboutsummaryrefslogtreecommitdiff
#!/bin/sh
set -eu

while getopts 'N:t:l:H:' flag; do
	case "$flag" in
		N)
			PROJECT_UC="$OPTARG"
			;;
		t)
			TITLE="$OPTARG"
			;;
		l)
			THE_LANG="$OPTARG"
			;;
		H)
			ALTERNATES="$OPTARG"
			;;
		*)
			exit 2
			;;
	esac
done
shift $((OPTIND - 1))

assert_arg() {
	if [ -z "$1" ]; then
		echo "Missing $2" >&2
		exit 2
	fi
}

assert_arg "${PROJECT_UC:-}" '-N PROJECT_UC'
assert_arg "${TITLE:-}"      '-t TITLE'
assert_arg "${THE_LANG:-}"   '-l THE_LANG'
assert_arg "${ALTERNATES:-}" '-H ALTERNATES'

pandoc \
	--toc                                   \
	--highlight-style pygments              \
	--toc-depth=2                           \
	-s                                      \
	--metadata title="$PROJECT_UC - $TITLE" \
	--metadata "lang=$THE_LANG"             \
	-r commonmark                           \
	-w html                                 \
	-H aux/workflow/favicon.html            \
	-H aux/workflow/style.css               \
	-H "$ALTERNATES"