diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..da2dccf --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "rechnung_sty"] + path = rechnung_sty + url = https://git.nr18.space/qbi/rechnung.sty diff --git a/rechnung.sh b/rechnung.sh index 5d5f4ca..0bde787 100755 --- a/rechnung.sh +++ b/rechnung.sh @@ -42,9 +42,7 @@ fi PROGRAMM_NAME=$0 PROGRAMM_VERSION="0.0.1" #VERBOSITY=0 -STY_HOME="$HOME/texmf/tex/latex" STY_RECHNUNG="rechnung.sty" -STY_URL="https://github.com/tomka/rechnung" RECHNUNGSFILE="rechnung.ini" TEMPLATEFILE="template.ltx" SEDFILE="sed.txt" @@ -163,19 +161,6 @@ check_readable() { fi } -check_sty() ( - - print_start "Suche nach $STY_RECHNUNG ..." - rechnung=$(find "$STY_HOME" -type f -name "$STY_RECHNUNG") - if [ "$rechnung" = "" ]; then - print_failed - return 1 - else - print_ok - return 0 - fi -) - check_binaries() { program="" @@ -232,52 +217,6 @@ trim_value() { set +f } -# LaTeX-Paket rechnung.sty installieren -# ------------------------------------- - -install_sty() ( - - old_pwd=$(pwd) - - read -r " LaTeX Paket $STY_RECHNUNG installieren? (y/N): " - if [ "$REPLY" = "y" ] || [ "$REPLY" = "Y" ] || [ "$REPLY" = "j" ] || [ "$REPLY" = "J" ] - then - check_binaries "$GIT_BIN $LATEX_BIN" - print_start "Hole Repo von $STY_URL ..." - - if git clone $STY_URL >/dev/null 2>&1; then - print_ok - cd rechnung - mkdir -p "$STY_HOME/rechnung/" - print_start "Kompiliere $STY_RECHNUNG ..." - - if $LATEX_BIN rechnung.ins >/dev/null 2>&1; then - print_ok - print_start "Kopiere $STY_RECHNUNG nach $STY_HOME/rechnung ..." - - if cp rechnung.sty "$STY_HOME/rechnung/"; then - print_ok - else - print_failed - exit 1 - fi - cd "$old_pwd" - rm -rf rechnung/ - print_info "Paket $STY_RECHNUNG erfolgreich installiert" - else - print_error "Installation fehlgeschlagen" - exit 5 - fi - else - print_error "Klonen des Repos fehlgeschlagen" - exit 6 - fi - else - print_info "Beende Progrann" - exit 7 - fi -) - # wenn ein neuer Kunde beginnt, alle Variablen neu initialisieren # --------------------------------------------------------------- @@ -330,12 +269,12 @@ make_invoice() { month_ascii=$(date '+%B') # inv_day=$(date '+%j') 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="$(echo "$buffer" | sed 's/; /\\\\\\\\\\\\\\ /g')" + anschrift="$(echo "$buffer" | sed 's/;/\\\\\\\\\\ /g')" print_info "Erstelle Rechnung: $filename" { @@ -347,7 +286,7 @@ 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" @@ -425,12 +364,11 @@ fi check_binaries "$EXECUTABLES_TO_CHECK" check_readable "$RECHNUNGSFILE" check_readable "$TEMPLATEFILE" -if ! check_sty "$STY_HOME"; then - print_warn "$STY_RECHNUNG nicht gefunden." - install_sty -fi -exit +if ! kpsewhich $STY_RECHNUNG > /dev/null; then + print_error "$STY_RECHNUNG nicht gefunden." + exit +fi # Kundendatei einlesen und rechnungen erstellen diff --git a/rechnung_sty b/rechnung_sty new file mode 160000 index 0000000..6d0d245 --- /dev/null +++ b/rechnung_sty @@ -0,0 +1 @@ +Subproject commit 6d0d24599de1cf509ccef42a398d06519f890cc4