fehler vom letzten commit beheben (rechnung.sh nicht angegeben)

This commit is contained in:
bernd 2021-06-05 23:04:44 +02:00
parent f162cd27eb
commit 0088a34577

View file

@ -47,7 +47,6 @@ KUNDENFILE="rechnung.ini"
TEMPLATEFILE="template.ltx"
LCOFILE="absender.lco"
LCO=
SEDFILE="sedfile.txt"
INSTALL_LCO_FILE=0
ANZAHL_RECHNUNGEN=0
READABLES_TO_CHECK=
@ -198,6 +197,7 @@ cat <<EOF
Usage:
$PROGRAMM_NAME
[-b basedir] Suche hier Dateien, die nicht angegeben wurden
[-d] Debug Modus
[-h] Gibt diese Hilfe aus
[-i] Installiere das Latexpaket rechnung.sty
[-k kundenfile] Pfad zur Datei mit den Kundendaten
@ -206,9 +206,7 @@ Usage:
[-t templatefile] Pfad zum Latextemplate
[-v] Verbose Modus
[-V] Ausgabe der Programmversion
Per Default werden kundenfile ($KUNDENFILE), lco-file ($LCOFILE) und
templatefile ($TEMPLATEFILE) in \$HOME/.rechnung gesucht.
Für weitere Informationen siehe readme.txt.
EOF
}
@ -540,6 +538,7 @@ make_invoice() {
rechnungsnummer="$inv_date--$LFDNR"
subject="Rechnung zu $SHORT"
filename="$(date '+%Y%m%d')_Rechnung_${month_ascii}_$(echo "$KUNDE" | $TR_BIN " " "_").ltx"
sedfile="$(basename -s .ltx $filename).sed"
buffer="$KUNDE; $ADRESSE"
anschrift="$(echo "$buffer" | sed 's/; /\\\\\\\\\\\\\\ /g')"
@ -554,9 +553,12 @@ make_invoice() {
printf "s!#POSITION#!%s!\n" "$POSITION"
printf "s!#BETRAG#!%s!\n" "$BETRAG"
printf "s!#DEADLINE#!%s!\n" "$inv_dead"
} >$SEDFILE
} >$sedfile
cp "$TEMPLATEFILE" "$filename"
$SED_BIN -i -f "$SEDFILE" "$filename"
$SED_BIN -i -f "$sedfile" "$filename"
if [ "$DEBUG" -eq 1 ]; then
cp "$filename" "$sedfile" "$OUTPUTDIR"
fi
if ! $GENPDF "$filename" 1>&2 >/dev/null; then
print_error "Kompilierung von $filename fehlgeschlagen"
@ -623,12 +625,15 @@ if [ -n "$NUMBER_OF_COLORS" ] && [ "$NUMBER_OF_COLORS" -ge 8 ]; then
fi
## CLI Optionen auswerten
while getopts b:hik:l:o:t:vV opt
while getopts b:dhik:l:o:t:vV opt
do
case $opt in
b)
BASEDIR=$(set_cli_opt "$OPTARG")
;;
d)
DEBUG=1
;;
h)
usage_and_exit 0
;;
@ -676,10 +681,11 @@ TEMPLATEFILE=$(set_abs_path "$TEMPLATEFILE")
check_dir "$BASEDIR"
check_dir "$OUTPUTDIR"
## die nötigen Dateien testen
## die nötigen Dateien testen und die Variable LCO setzen
for file in "$LCOFILE" "$KUNDENFILE" "$TEMPLATEFILE"; do
check_file "$file"
done
LCO=$(basename "$LCOFILE" .lco)
## temporäres Verzeichnis erstellen und hineinwechseln
TEMPDIR=$(mktemp -d)