Nel primo scenario, ho uno script che contiene tutti i miei gestori e snippet. Il nome file per questo script è "Jimz_Handlerz.scpt" e si trova qui ... / Users / Smokestack / Libreria / Librerie di script
Chiamare il gestore da un nuovo file AppleScript richiede che dichiari la mia libreria di script (riga 1) e quindi posso chiamare il gestore in qualsiasi momento che desidero con la seconda riga. In questo modo:
use myHandlerz : script "Jimz_Handlerz.scpt"
myHandlerz's get_fileExtensions()
In questo prossimo scenario, sto utilizzando il comando "script di caricamento" per caricare lo stesso file esatto del primo esempio, ma questo file si trova sul desktop
property jimzHandlerz : load script ¬
(alias "Macintosh HD:Users:Smokestack:Desktop:Jimz_Handlerz.scpt")
jimzHandlerz's get_fileExtensions()
Questo è il gestore reale che contiene il comando che sto chiamando da entrambi i diversi scenari ..
on get_fileExtensions()
tell application "Finder"
set theDownloadsfolder to (path to downloads folder)
set theFiles to the name extension of every file of theDownloadsfolder
end tell
AST copy list theFiles without keeping duplicates -- Needs AppleScript Toolbox 2_0_8.osax Scripting Addition in /Users/"Name"/Library/ScriptingAdditions
end get_fileExtensions
Quindi immagino che la mia domanda sia, ci sono situazioni in cui preferirei usare lo scenario uno e altre situazioni in cui lo scenario due sarebbe meglio?
Aggiornamento:
Ecco una piccola informazione interessante: Utilizzare lo scenario dei gestori di chiamata da uno script di libreria di script o da un pacchetto di script come nel primo esempio della mia domanda originale. Se lo script corrente, che stiamo chiamando su un esterno script da una libreria, è un pacchetto di script e includiamo una cartella all'interno della cartella "Risorse" chiamata "Librerie di script" contenente lo script o il pacchetto di script che chiamiamo i nostri gestori esterni, se il file è nella cartella "Script Libraries" del sistema non può essere trovato, quindi questo script non genera un errore perché cerca la cartella delle risorse anche per le librerie di script.