Je ein ';' wird durch einen '\' ersetzt
Neben den Backslashes am Zeilenende gab es Backslashes innerhalb des Textes. Beispiel: - Datum: 05.\,02.\,2024 - Straße: Gitstr.\,42 Mit diesen Backslashes kam die Ersetzung nicht gut zurecht. Daher habe ich das so geändert, dass jedes Semikolon (';') durch einen Backslash ersetzt wird. Im Datum und Straßen muss nun auch ein Semikolon stehen. Damit klappt die Ersetzung besser.
This commit is contained in:
parent
d15355b689
commit
ef70318e30
|
@ -1,11 +1,11 @@
|
|||
# file: rechnung.ini
|
||||
#
|
||||
# Bei adresse1 muss am Ende ein Semikolon (;) stehen. Dies sorgt dafür, dass im
|
||||
# Bei adresse1 müssen an jedem Zeilenumbruch zwei Semikola (;;;;) stehen. Dies sorgt dafür, dass im
|
||||
# LaTeX-Code dies durch zwei Backslashes ersetzt wird.
|
||||
|
||||
[start]
|
||||
kunde=Firma A
|
||||
adresse= Strasse A; 012345 Stadt A;
|
||||
adresse= Strasse A;; 012345 Stadt A;;
|
||||
anrede=Sehr geehrte Damen und Herren,
|
||||
einleitung=anbei die Rechnung
|
||||
anzahl=1
|
||||
|
@ -17,7 +17,7 @@ lfdnr=1
|
|||
|
||||
[start]
|
||||
kunde=Firma B
|
||||
adresse=Personalabteilung; Frau B; Strasse B; 01234 Stadt B;
|
||||
adresse=Personalabteilung;; Frau B;; Strasse B;; 01234 Stadt B;;
|
||||
anrede=Sehr geehrte Frau B,
|
||||
einleitung=Wie in Vertrag 08/15 vereibart berechne ich
|
||||
anzahl=11
|
||||
|
@ -29,7 +29,7 @@ lfdnr=1
|
|||
|
||||
[start]
|
||||
kunde=Herr C
|
||||
adresse=Strasse C; 12345 Stadt C;
|
||||
adresse=Strasse C;; 12345 Stadt C;;
|
||||
anrede=Sehr geehrter Herr C,
|
||||
einleitung=anbei die Rechnung
|
||||
anzahl=1
|
||||
|
|
12
rechnung.sh
12
rechnung.sh
|
@ -460,27 +460,29 @@ make_invoice() (
|
|||
dead_days="16"
|
||||
fi
|
||||
|
||||
# Bei der Ersetzung unten wird jedes ';' durch genau ein '\' ersetzt. Daher ist die Anzahl der ';' wichtig.
|
||||
month_ascii=$(date '+%B')
|
||||
inv_date=$(date '+%Y%m%d')
|
||||
inv_dead=$(date -d "+${dead_days}days" '+%d.\\,%m.\\,%Y')
|
||||
inv_dead=$(date -d "+${dead_days}days" '+%d.;,%m.;,%Y')
|
||||
rechnungsnummer="$inv_date--$LFDNR"
|
||||
subject="Rechnung zu $SHORT"
|
||||
filename="$(date '+%Y%m%d')_Rechnung_${month_ascii}_$(echo "$KUNDE" | $TR_BIN " " "_").ltx"
|
||||
buffer="$KUNDE; $ADRESSE"
|
||||
anschrift="${buffer//;/\\\\\\\\}"
|
||||
buffer="$KUNDE;; $ADRESSE"
|
||||
#anschrift=$(echo "$buffer" | sed 's/;/\\\\/g')
|
||||
|
||||
|
||||
print_info "Erstelle Rechnung: $filename"
|
||||
{
|
||||
printf "s!#LCOFILE#!%s!\n" "$LCO"
|
||||
printf "s!#SUBJECT#!%s!\n" "$subject"
|
||||
printf "s!#ANREDE#!%s!\n" "$ANREDE"
|
||||
printf "s!#ANSCHRIFT#!%s!\n" "$anschrift"
|
||||
printf "s!#ANSCHRIFT#!%s!\n" "$(echo "$buffer" | sed 's/;/\\\\/g')"
|
||||
printf "s!#RECHNUNGSNUMMER#!%s!\n" "$rechnungsnummer"
|
||||
printf "s!#ANZAHL#!%s!\n" "$ANZAHL"
|
||||
printf "s!#POSITION#!%s!\n" "$POSITION"
|
||||
printf "s!#EINLEITUNG#!%s!\n" "$EINLEITUNG"
|
||||
printf "s!#BETRAG#!%s!\n" "$BETRAG"
|
||||
printf "s!#DEADLINE#!%s!\n" "$inv_dead"
|
||||
printf "s!#DEADLINE#!%s!\n" "$(echo "$inv_dead" | sed 's/;/\\\\/g')"
|
||||
} >$SEDFILE
|
||||
cp "$TEMPLATEFILE" "$filename"
|
||||
$SED_BIN -i -f "$SEDFILE" "$filename"
|
||||
|
|
Loading…
Reference in a new issue