aboutsummaryrefslogtreecommitdiff
path: root/aux/workflow/TODOs.sh
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2021-06-26 21:48:18 -0300
committerEuAndreh <eu@euandre.org>2021-06-26 21:49:20 -0300
commit59f34fe49527fc697bd86145aa974076c83eb404 (patch)
treeee4748e63d034b86e50b78724d5812cd7e001681 /aux/workflow/TODOs.sh
parentaux/utils.sh: Remove unused file (diff)
downloadremembering-59f34fe49527fc697bd86145aa974076c83eb404.tar.gz
remembering-59f34fe49527fc697bd86145aa974076c83eb404.tar.xz
aux/: Update, adapt Makefile accordingly
Diffstat (limited to 'aux/workflow/TODOs.sh')
-rwxr-xr-xaux/workflow/TODOs.sh40
1 files changed, 36 insertions, 4 deletions
diff --git a/aux/workflow/TODOs.sh b/aux/workflow/TODOs.sh
index f93ece8..6c24c3e 100755
--- a/aux/workflow/TODOs.sh
+++ b/aux/workflow/TODOs.sh
@@ -1,11 +1,43 @@
#!/bin/sh
set -eu
-PROJECT_UC="$1"
-PROJECT="$2"
-MAILING_LIST="$3"
-OUTDIR="$4"
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
TODOS_ADD_REGEX='s/^## (TODO|DOING|WAITING|MEETING|INACTIVE|NEXT|CANCELLED|DONE) (.*) \{#(.*?)\}$/## <a href="#\3"><span class="\1">\1<\/span> \2<\/a>\n<pre class="header-anchor" id="\3">#\3<\/pre>\n/'
TODOS_CLEANUP_REGEX1='s/(<a><a)/<a/'