#!/bin/bash set -e cd "$(dirname "$0")" teile_params=( Kanons/Komm_Herr_Jesu_sei_du_unser_Gast Kanons/Segne_Herr_was_deine_Hand Kanons/Der_Herrgott_laesst_wachsen_das_taegliche_Brot Kanons/Segne_Vater_diese_Speise Lobet_den_Herrn_und_dankt_ihm_seine_Gaben Alle_guten_Gaben_alles_was_wir_haben Der_Tag_ist_seiner_Hoehe_nah Aller_Augen_warten_auf_dich_Herre Wir_danken_Gott_fuer_seine_Gaben Alle_gute_Gabe_kommt_her_von_Gott_dem_Herrn Nun_lasst_uns_Gott_dem_Herren_Dank_sagen Kanons/Und_wie_der_kleine_Vogel_singt Jedes_Tierlein_hat_sein_Essen Kanons/Der_selbst_den_Spatzen_gibt_zu_essen Kanons/Kommt_das_Essen_ist_bereitet Kanons/Danket_danket_dem_Herrn Wir_danken_dir_Herr_Jesu_Christ Gott_giebet_Speise_reichlich_und_ueberall Danket_dem_Herrn Nun_danket_alle_Gott_ Kanons/Bittend_falten_wir_die_Haende ) rm -f *.pre for teil_params in "${teile_params[@]}" do teil="${teil_params%%:*}" params="${teil_params#${teil}}" params="${params#:}" ( cd ../${teil} sed -n ' s/^\([^:]*%\|'"${teil##*/}"'\)\.pdf.*:\s*// T :a /\\$/ { N s/\\\n/ / ta } s/\n.*$// s/%/'"${teil##*/}"'/g p ' Makefile | \ tr ' ' '\n' | \ grep '\.pre$' | \ xargs -r make ${params} 'SPEZIFISCH=\#(set-default-paper-size \"a6\")\n\#(set-global-staff-size 14.55)' "$@" ) done { printf '\n\n' cat Tischgemeinschaft.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 > Tischgemeinschaft.pre lilypond Tischgemeinschaft.pre