diff options
Diffstat (limited to 'aux/workflow/TODOs.sh')
-rwxr-xr-x | aux/workflow/TODOs.sh | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/aux/workflow/TODOs.sh b/aux/workflow/TODOs.sh new file mode 100755 index 0000000..00fef6f --- /dev/null +++ b/aux/workflow/TODOs.sh @@ -0,0 +1,28 @@ +#!/bin/sh +set -eu + +mkdir -p public + +export PROJECT_UC="$1" +export PROJECT="$2" +export MAILING_LIST="$3" + +TODOS_REGEX='s/^## (TODO|DOING|WAITING|MEETING|INACTIVE|NEXT|CANCELLED|DONE) (.*) \{#(.*?)\}$/## <a href="#\3"><span class="\1">\1<\/span> \2<\/a>\n<span class="header-anchor" id="\3">#\3<\/span>\n/' + +TAGS_REGEX='s/tag:([\w-]+)/<span class="tag">\1<\/span>/g' + +envsubst < aux/workflow/preamble.md | \ + printf '%s\n\n%s' \ + "$(cat -)" \ + "$(perl -pe "$TODOS_REGEX" TODOs.md | \ + perl -pe "$TAGS_REGEX")" | \ + pandoc --toc \ + --highlight-style pygments \ + --toc-depth=2 \ + -s \ + --metadata title="$PROJECT_UC - TODOs" \ + --metadata lang=en \ + -r commonmark \ + -w html \ + -H aux/workflow/style.css \ + > public/TODOs.html |