#!/bin/bash set -e cd "$(dirname "$0")" teile_params=( Kanons/Gelobet_gelobet_sei_der_da_kommt 'Macht_hoch_die_Tuer:STROPHEN="[1-3]"' Froehlich_soll_mein_Herze_springen_kombiniert_E_dur Freuet_euch_ihr_Christen_alle O_Heiland_reisz_die_Himmel_auf Fuerchtet_euch_nicht Brich_an_du_schoenes_Morgenlicht 'Es_kommt_ein_Schiff_geladen:STROPHEN=[1-4]' Ich_steh_an_deiner_Krippen_hier_ ) 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