- Registriert
- 25.02.07
- Beiträge
- 97
Nun wie der Titel so schön sagt möchte ich ein Applescript Droplet erstellen, welches mir Dokumente exportiert.
Ein Droplet hab ich schon, also ich denke, dass ich es schon hab.
Es sieht wie folgt aus:
meines Erachtens ist der Teil mit viewResult absolut unnötig, zumindes für meine Zwecke
Auch den Exporter habe ich schon
alles geht einzeln super. Jetzt möchte ich aber eine Verknüpfung machen, so dass ich eine Ordner voller Files dropen kann und darauf exportiert wird.
Bis jetzt hab ich noch keine Möglichkeit gefunden.
Vielleicht kann mir jemand helfen
Gruss Cassian
Ein Droplet hab ich schon, also ich denke, dass ich es schon hab.
Es sieht wie folgt aus:
Code:
global resultList -- Ergebnisliste
global overallCount -- Dateizähler
on open listItems -- Start über Drag und Drop
set {overallCount, resultList} to {0, {}}
distributeItems(listItems) -- weiter mit Verteiler
viewResult() -- Ergebnisse anzeigen
end open
on distributeItems(pathList) -- Ordner und Dateien verteilen
tell application "System Events"
repeat with i in pathList
if class of disk item (POSIX path of i) is folder then
my processFolder(i) -- wenn Ordner
else
my processFile(i) -- wenn kein Ordner
end if
end repeat
end tell
end distributeItems
on processFolder(aFolder) -- Anweisungen an Ordner
tell application "System Events"
-- Alle sichtbaren Elemente im Ordner ermitteln:
set allItems to disk items of aFolder whose visible is true
my distributeItems(allItems) -- Inhalt zurück an Verteiler
end tell
end processFolder
on processFile(someFile) -- Anweisungen an Dateien
tell application "System Events"
-- Beispiel: Die Eigenschaft "POSIX path" abfragen:
set end of resultList to POSIX path of someFile
-- oder den Namen durchnummerieren zum Beispiel mit:
-- set name of someFile to (overallCount as text) & "_" & (name of someFile)
end tell
set overallCount to overallCount + 1 -- Dateizähler hochsetzen
end processFile
(*
on viewResult() -- Ergebnisse anzeigen
tell application "TextEdit"
activate
make new document
set AppleScript's text item delimiters to return
set text of document 1 to (resultList as text) ¬
& return & "Anzahl Dateien: " & overallCount
end tell
end viewResult
*)
on quit -- Aufräumarbeiten vor Beendigung
set AppleScript's text item delimiters to ""
continue quit
end quit
meines Erachtens ist der Teil mit viewResult absolut unnötig, zumindes für meine Zwecke
Auch den Exporter habe ich schon
Code:
-- Zielordner angeben
set targetFolder to choose folder with prompt "Location for exported files"
set targetPath to (targetFolder as Unicode text)
tell application "Adobe Illustrator"
-- Schaltet User interationen aus um den Skript nicht zu unterbrechen
set user interaction level to never interact
-- Zählt die offenen Dokumente
set documentCount to count documents
-- Exportiert jedes offene Dokument
repeat with i from 1 to documentCount
-- Nimmt den Namen für den Speicherpfad
set documentName to name of document i
-- Einstellungen für Export
export document i to file (targetPath & documentName) as Flash ¬
without options
end repeat
end tell
alles geht einzeln super. Jetzt möchte ich aber eine Verknüpfung machen, so dass ich eine Ordner voller Files dropen kann und darauf exportiert wird.
Bis jetzt hab ich noch keine Möglichkeit gefunden.
Vielleicht kann mir jemand helfen
Gruss Cassian