From eb0b4d2c61efc2dbcc66060bbbf5cecc2a9bbb8f Mon Sep 17 00:00:00 2001 From: enchiriadis Date: Mon, 17 Aug 2026 14:38:32 +0200 Subject: [PATCH] Kompilier-Funktion in eigenes Script ausgelagert. --- .../scripts/_belegversand_setup.applescript | 67 ------------------- compile.sh | 15 +++++ 2 files changed, 15 insertions(+), 67 deletions(-) create mode 100644 compile.sh diff --git a/Helpers/scripts/_belegversand_setup.applescript b/Helpers/scripts/_belegversand_setup.applescript index 8216a71..86a8e44 100644 --- a/Helpers/scripts/_belegversand_setup.applescript +++ b/Helpers/scripts/_belegversand_setup.applescript @@ -64,68 +64,6 @@ property defaultWriteDebugLog : "false" property defaultShowReadme : "true" property defaultDryRunPreviewPath : "/tmp/DT-Belegversand-preview.txt" -(* -compileAllScripts(basePath) --------------------------- -Kompiliert alle AppleScript-Quellen (.applescript) zu ausführbaren Scripts (.scpt). - -WARUM: -- Im Git-Repo liegen nur .applescript-Dateien (Plaintext für Versionskontrolle) -- AppleScript kann aber nur .scpt-Dateien (kompiliert) laden via "load script" -- Nach git clone sind nur .applescript vorhanden → kein Versand möglich - -WAS: -- Iteriert über alle 6 Scripts im Projekt -- Ruft osacompile auf (macOS Tool) -- Liest .applescript-Quelle -- Schreibt .scpt-Binary -- Löscht die .applescript danach (sauberer: nur .scpt bleibt) - -PFAD-PROBLEM: -- basePath MUSS absolut sein (ab Home, mit do shell script "echo ~") -- Relative Pfade funktionieren nicht zuverlässig in AppleScript -- Deshalb wird basePath als Parameter übergeben, nicht lokal definiert - -WICHTIG: -- Diese Funktion wird nur beim Setup aufgerufen (nach git clone) -- Sie ist kein Fehler, wenn .applescript nicht existiert (z.B. bei AirDrop-Kopie) -*) -on compileAllScripts(basePath) - tell application id "DNtp" - my writeDebug("compileAllScripts: Start") - end tell - - set filesToCompile to {"START.applescript", ¬ - "Helpers/show_mail_templates.applescript", ¬ - "Helpers/create-year-cycle.applescript", ¬ - "Helpers/uuid_anzeigen.applescript", ¬ - "Helpers/scripts/_belegversand_setup.applescript", ¬ - "Helpers/scripts/_belegversand.applescript"} - - repeat with fileName in filesToCompile - set sourceFile to basePath & "/" & fileName - set outputFile to basePath & "/" & (text 1 thru -13 of fileName) & ".scpt" - - try - do shell script "osacompile -o " & quoted form of outputFile & " " & quoted form of sourceFile - -- Nach Kompilierung: .applescript löschen - do shell script "rm " & quoted form of sourceFile - tell application id "DNtp" - my writeDebug("Compiled & removed: " & filename) - end tell - on error errMsg - tell application id "DNtp" - my writeDebug("Compile ERROR: " & filename & " - " & errMsg) - end tell - end try - end repeat - - tell application id "DNtp" - my writeDebug("compileAllScripts: Done") - end tell -end compileAllScripts - - (* runSiblingScript(scriptFileName) -------------------------------- @@ -136,8 +74,6 @@ Verwendung: - bei vorhandener Konfiguration wird das Hauptscript _belegversand.scpt gestartet *) on runSiblingScript(scriptFileName) - -- Absolute Basis-Path (Home + fest Installation) - set basePath to (do shell script "echo ~") & basePath set targetPath to basePath & "/Helpers/scripts/" & scriptFileName try @@ -686,9 +622,6 @@ on run -- Absolute Basis-Path für Script-Kompilierung set basePath to (do shell script "echo ~") & basePath - compileAllScripts(basePath) - set compileHint to return & return & "✓ Scripts kompiliert" - display dialog "Belegversand wurde eingerichtet." & return & return & ¬ "Datenbank-Wurzel: " & dbRootName & return & ¬ "Belege-Gruppe: " & belegeRootName & return & ¬ diff --git a/compile.sh b/compile.sh new file mode 100644 index 0000000..8a03258 --- /dev/null +++ b/compile.sh @@ -0,0 +1,15 @@ +#!/bin/bash +set -e + +REPO_ROOT="$(cd "$(dirname "$0")" && pwd)" + +echo "Compiliere Belegversand AppleScripts..." + +osacompile -o "$REPO_ROOT/START.scpt" "$REPO_ROOT/START.applescript" +osacompile -o "$REPO_ROOT/Helpers/show_mail_templates.scpt" "$REPO_ROOT/Helpers/show_mail_templates.applescript" +osacompile -o "$REPO_ROOT/Helpers/create-year-cycle.scpt" "$REPO_ROOT/Helpers/create-year-cycle.applescript" +osacompile -o "$REPO_ROOT/Helpers/uuid_anzeigen.scpt" "$REPO_ROOT/Helpers/uuid_anzeigen.applescript" +osacompile -o "$REPO_ROOT/Helpers/scripts/_belegversand_setup.scpt" "$REPO_ROOT/Helpers/scripts/_belegversand_setup.applescript" +osacompile -o "$REPO_ROOT/Helpers/scripts/_belegversand.scpt" "$REPO_ROOT/Helpers/scripts/_belegversand.applescript" + +echo "✓ Fertig!"