7
votes

#include comme la directive dans AppleScript

Dupliqué possible: strong>
Importer des méthodes AppleScript dans un autre AppleScript? P>

Y a-t-il quelque chose dans AppleScript qui peut être utilisé comme la directive #include code> en C? p>

par exemple: p>

INCLUDE_DIRECTIVE "Path/To/Applescript.scpt"

//Some AppleScript code here


1 commentaires

3 Réponses :


3
votes

Utilisez quelque chose comme ça pour charger le script xxx pré>

puis pour accéder à un sous-programme dans ce script, faites-la ... p>

set myValue to someMethod() of scriptLibrary


0 commentaires

12
votes

Vous pouvez absolument faire cela et il y a deux variantes. La première charge l'ensemble du script:

script foo.scpt em> p> xxx pré>

script bar.scpt em> p > xxx pré>

La seconde vous permet de charger un script et d'appeler des méthodes spécifiques dans ce script: p>

foo.scpt em> p>

on Oop(Eek)
    display dialog Eek
    return "Eek: " & Eek
end Oop


0 commentaires

1
votes

ajouter à quelles autres affiches ont dit, Charger le script est la seule option intégrée; C'est très primitif, mais peut être suffisant si vos besoins sont modestes.

Le débogueur de script Editor fournit un mécanisme de bibliothèque de style # include qui peut fusionner plusieurs fichiers AppleScript lorsque compiler un script. L'inconvénient du débogueur de script est que c'est à quelques centaines d'années d'acheter, bien que de nombreux utilisateurs de AppleScript ordinaires vous indiquent que cela vaut bien l'investissement.

Il existe un couple de chargeurs de module tiers, chargeur et MODULLOADER , qui met en œuvre des mécanismes d'importation plus sophistiqués au-dessus du script de chargement de base , et valent la peine d'être examinée si vos exigences sont plus complexes. Je n'ai pas utilisé Moduleloader, mais le chargeur (que j'ai écrit) peut importer des modules à la compilée ou à l'exécution de différents emplacements spécifiés par l'utilisateur et résoudre automatiquement des dépendances complexes (même circulaires) entre modules.

Les inconvénients du chargeur et du chargeur de module sont qu'ils s'appuient sur des ajouts de script pour effectuer une partie de la levée importante, ce qui pourrait être un problème lors de la distribution de scripts (dans le cas de Loader, l'OSAX n'est nécessaire que pour compiler des scripts, pour ne pas les exécuter. ), plus vous devez ajouter du code de la chaudière à votre script pour effectuer l'importation réelle.


0 commentaires