diff options
-rwxr-xr-x | Brotbacken.sh | 36 |
1 files changed, 27 insertions, 9 deletions
diff --git a/Brotbacken.sh b/Brotbacken.sh index dc801c1..e147bde 100755 --- a/Brotbacken.sh +++ b/Brotbacken.sh @@ -3,16 +3,26 @@ tmp_dir=$(mktemp -d) trap 'rm -rf --one-file-system "${tmp_dir}"' EXIT +if [ $# -gt 0 ] && [ -z "${1##*K}" ]; then + faktor=$( + printf 'e(-l(2)*((%s)/10))\n' "${1%K}" \ + | bc -l + ) + shift +else + faktor=1 +fi + { cat <<EOF -30m Dehne und falte bitte den Teig! -30m Dehne und falte bitte den Teig! -30m Dehne und falte bitte den Teig, decke ihn dann nicht ab und stelle den Topf in den Ofen! -33m Drehe bitte den Ofen bis zum Anschlag an! -27m Stelle bitte das Brot in den Ofen! -8m Drehe bitte den Ofen runter! -49m Mache bitte den Ofen aus und nimm den Deckel runter! -5m Nimm bitte das Brot raus! +faktor*30 Dehne und falte bitte den Teig! +faktor*30 Dehne und falte bitte den Teig! +faktor*30 Dehne und falte bitte den Teig, decke ihn dann nicht ab und stelle den Topf in den Ofen! +faktor*60-27 Drehe bitte den Ofen bis zum Anschlag an! +27 Stelle bitte das Brot in den Ofen! +8 Drehe bitte den Ofen runter! +49 Mache bitte den Ofen aus und nimm den Deckel runter! +5 Nimm bitte das Brot raus! EOF } \ | if [ $# -gt 0 ]; then @@ -23,7 +33,15 @@ fi \ | while read -r Zeit Schritt; do Schrittdatei=$(mktemp "${tmp_dir}/Schritt_$(echo "${Schritt}" | tr -dc 'a-zA-Z ' | tr ' ' '_')_XXXXXXXX.wav") espeak-ng -vde -w "${Schrittdatei}" "${Schritt}" - printf '%s %s\n' "${Zeit}" "${Schrittdatei}" + Zeit=$( + printf '%s\n' "${Zeit}" \ + | sed 's@faktor@('"${faktor}"')@g' \ + | bc -l + ) + if [ -z "${Zeit%-*}" ]; then + Zeit=0 + fi + printf '%sm %s\n' "${Zeit}" "${Schrittdatei}" done \ | while read -r Zeit Schrittdatei; do sleep "${Zeit}" |