summaryrefslogtreecommitdiff
path: root/genoaps.sh
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2025-03-02 02:49:32 -0500
committerIan Moffett <ian@osmora.org>2025-03-02 02:49:32 -0500
commitd2fe43f7a2b9f214c3ce7688f449974b40eb4641 (patch)
tree72df4aa68261e10277039b3513de6584cbc2a4bd /genoaps.sh
parent84a1a89f776b4611f6ea6659381961178f46ad14 (diff)
Add OAP generation script
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'genoaps.sh')
-rw-r--r--genoaps.sh44
1 files changed, 44 insertions, 0 deletions
diff --git a/genoaps.sh b/genoaps.sh
new file mode 100644
index 0000000..50fff04
--- /dev/null
+++ b/genoaps.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+set -e
+
+KRAMDOWN_DIR=kd
+XML_RESDIR=xmlgen
+OAP_RESDIR=oapgen
+OAPS=$(find $KRAMDOWN_DIR -name "*.md")
+
+cleanup() {
+ echo "genoaps: Cleaning up..."
+ echo "genoaps: Removing artifacts..."
+ rm -rfv $XML_RESDIR
+ rm -rfv $OAP_RESDIR
+}
+
+convert_all() {
+ for oap in $OAPS
+ do
+ output="${oap%.md}.txt"
+
+ echo "Preparing $oap..."
+ kdrfc $oap 1>/dev/null || cleanup
+
+ # Clean up output
+ tr -d '\000-\011\013\014\016-\037' <$output | \
+ sed '1,/./{/^$/d;}' | tee $output >/dev/null
+
+ mv $output $OAP_RESDIR/$(basename "${output%.txt}")
+ mv $KRAMDOWN_DIR/*.xml $XML_RESDIR
+ done
+}
+
+
+if [[ "$1" == "--clean" ]]
+then
+ cleanup
+ exit 0
+fi
+
+mkdir -p $XML_RESDIR
+mkdir -p $OAP_RESDIR
+convert_all
+echo "** Done! OAPs generated in the $OAP_RESDIR directory **"