Public Access
Kompilier-Funktion in eigenes Script ausgelagert.
This commit is contained in:
@@ -64,68 +64,6 @@ property defaultWriteDebugLog : "false"
|
|||||||
property defaultShowReadme : "true"
|
property defaultShowReadme : "true"
|
||||||
property defaultDryRunPreviewPath : "/tmp/DT-Belegversand-preview.txt"
|
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)
|
runSiblingScript(scriptFileName)
|
||||||
--------------------------------
|
--------------------------------
|
||||||
@@ -136,8 +74,6 @@ Verwendung:
|
|||||||
- bei vorhandener Konfiguration wird das Hauptscript _belegversand.scpt gestartet
|
- bei vorhandener Konfiguration wird das Hauptscript _belegversand.scpt gestartet
|
||||||
*)
|
*)
|
||||||
on runSiblingScript(scriptFileName)
|
on runSiblingScript(scriptFileName)
|
||||||
-- Absolute Basis-Path (Home + fest Installation)
|
|
||||||
set basePath to (do shell script "echo ~") & basePath
|
|
||||||
set targetPath to basePath & "/Helpers/scripts/" & scriptFileName
|
set targetPath to basePath & "/Helpers/scripts/" & scriptFileName
|
||||||
|
|
||||||
try
|
try
|
||||||
@@ -686,9 +622,6 @@ on run
|
|||||||
-- Absolute Basis-Path für Script-Kompilierung
|
-- Absolute Basis-Path für Script-Kompilierung
|
||||||
set basePath to (do shell script "echo ~") & basePath
|
set basePath to (do shell script "echo ~") & basePath
|
||||||
|
|
||||||
compileAllScripts(basePath)
|
|
||||||
set compileHint to return & return & "✓ Scripts kompiliert"
|
|
||||||
|
|
||||||
display dialog "Belegversand wurde eingerichtet." & return & return & ¬
|
display dialog "Belegversand wurde eingerichtet." & return & return & ¬
|
||||||
"Datenbank-Wurzel: " & dbRootName & return & ¬
|
"Datenbank-Wurzel: " & dbRootName & return & ¬
|
||||||
"Belege-Gruppe: " & belegeRootName & return & ¬
|
"Belege-Gruppe: " & belegeRootName & return & ¬
|
||||||
|
|||||||
+15
@@ -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!"
|
||||||
Reference in New Issue
Block a user