summaryrefslogtreecommitdiff
path: root/Konzerte/2019_01_06/make
diff options
context:
space:
mode:
Diffstat (limited to 'Konzerte/2019_01_06/make')
-rwxr-xr-xKonzerte/2019_01_06/make74
1 files changed, 74 insertions, 0 deletions
diff --git a/Konzerte/2019_01_06/make b/Konzerte/2019_01_06/make
new file mode 100755
index 0000000..d55cf53
--- /dev/null
+++ b/Konzerte/2019_01_06/make
@@ -0,0 +1,74 @@
+#!/bin/bash
+
+set -e
+
+cd "$(dirname "$0")"
+
+teile_params=(
+ 'Herbei_o_ihr_Glaeubgen:STROPHEN="[1-3]"'
+ Als_die_Welt_verloren
+ Uebers_Gebirg_Maria_geht
+ Fuerchtet_euch_nicht
+ Brich_an_du_schoenes_Morgenlicht
+ Freude_grosze_Freude
+ Ich_steh_an_deiner_Krippen_hier
+ Froehlich_soll_mein_Herze_springen_kombiniert_E_dur
+ 'Es_ist_ein_Ros_entsprungen:STROPHEN="[1-3]"'
+ O_du_froehliche
+ Freuet_euch_ihr_Christen_alle
+)
+
+rm -f *.pre
+
+for teil_params in "${teile_params[@]}"
+do
+ teil="${teil_params%%:*}"
+ params="${teil_params#${teil}}"
+ params="${params#:}"
+ (
+ cd ../../${teil}
+ sed -n '
+ s/^[^:]*%\.pdf.*:\s*//
+ T
+ s/%/'"${teil##*/}"'/g
+ p
+ ' Makefile | \
+ tr ' ' '\n' | \
+ grep '\.pre$' | \
+ xargs -r make ${params} "$@"
+ )
+done
+
+{
+ printf '\n\n'
+ cat alles.ly
+ printf '\n\n'
+} | \
+ while read -r line
+ do
+ if [[ "${line}" = '%LOOP%'* ]]
+ then
+ loopLines="${loopLines}
+${line#%LOOP%}"
+ else
+ if [ -n "${loopLines}" ]
+ then
+ for teil in "${teile_params[@]%%:*}"
+ do
+ echo "${loopLines}" | \
+ sed "
+ s|%TEIL%|${teil}|g
+ s|%TEIL-BASE%|${teil##*/}|g
+ /%IF \([^=%]\+\)!=\1%/d
+ s|%IF [^=%]\+!=[^=%]\+%||g
+ s|%IF \([^=%]*[^=!%]\)=\1%||g
+ /%IF [^=%]\+=[^=%]\+%/d
+ "
+ done
+ unset loopLines
+ fi
+ echo "${line}"
+ fi
+ done > alles.pre
+
+lilypond alles.pre