AppleScript
AppleScript | |
AppleScript | |
Extensii fișiere | .scpt, .scptd, .applescript |
---|---|
Paradigmă | Programare în limbaj natural, Scripting language |
Apărut în | 1993; acum 25 de ani |
Dezvoltator | Apple Inc. |
Ultima versiune | 2.7/ 16 octombrie 2014[1] |
Tipare | Slab, dinamic |
Influențat de | HyperCard |
Sistem de operare | System 7, Mac OS 8, Mac OS 9, macOS |
Licență | Software proprietar (piesele disponibile sub APSL |
Prezență online | https://developer.apple.com/applescript |
Modifică date / text |
AppleScript este un limbaj de scripting creat de Apple și încorporat în MacOS folosit pe calculatoarele corporației, începând cu System 7.
Limbajul AppleScript constă din comenzi care pot fi utilizate pentru a controla sistemul de operare, schimbul de date între aplicații, precum și pentru programele de automatizare. AppleScript poate efectua calcule simple și procesare complexă a textului, și este, de asemenea, extensibil, ceea ce vă permite să utilizați add-on-uri pentru a adăuga noi funcții la limbă. AppleScript poate efectua calcule simple și procesare complexă a textului, și este, de asemenea, extensibil, ceea ce vă permite să utilizați add-on-uri pentru a adăuga noi funcții la limbă. Acestea pot conecta rapid mai multe aplicații într-un singur complex automatizat. Cu toate acestea, AppleScript se bazează în principal pe funcționalitatea aplicațiilor și a proceselor laterale pentru a gestiona sarcini complexe.
AppleScript are unele elemente de programare orientată pe obiecte, în special atunci când se programează obiecte ale scriptului și sintaxa "limbajului natural", dar nu corespunde strict cu una sau altă categorie.
Instrumente de dezvoltare
modificareEditorii de scripturi
modificareEditorii de scripturi oferă un mediu unificat pentru programarea programelor AppleScript și furnizează instrumente pentru compilarea, testarea, rularea și depanarea acestora. De asemenea, ele oferă mecanisme pentru vizualizarea dicționarelor AppleScript din aplicații de scripting, salvând scripturi în diferite formate (fișiere de script compilate, pachete de aplicații, pachete de script și fișiere text) și de obicei oferă funcții precum evidențierea sintaxelor și inserarea fragmentelor de cod pre-scrise.
Editorul AppleScript
modificareNumele este folosit în versiunile macOS înainte de 10.6 Snow Leopard, precum și în OS X Yosemite. Editorul AppleScript care vine cu macOS. Scripturile sunt scrise într-o fereastră unde pot fi compilate și redate. Ferestrele conțin, de asemenea, diferite panouri care conțin date înregistrate, rezultate de execuție și alte informații necesare pentru depanare. Accesul la dicționarele de script și fragmente de coduri precompilate sunt disponibile prin meniul aplicației. Editorul AppleScript pe OS X Yosemite are capacitatea de a scrie codul AppleScript și JavaScript.
Xcode(Apple)
modificareUn set de instrumente de dezvoltare a aplicațiilor cu abilitatea de a edita fișierele AppleScript sau de a crea aplicații integrate scrise cu AppleScript.
Smile и SmileLab (Satimage Software)
modificareSoftware-ul IDE gratuit/comercial de la terțe părți pentru AppleScript, care la rândul său este complet scris în AppleScript. Smile este un software gratuit, în primul rând pentru dezvoltarea AppleScript. SmileLab oferă software comercial cu extensii extinse pentru analiza numerică, grafică, automatizarea mașinilor și producția web. Smile și SmileLab utilizează un sortiment de ferestre diferite - pentru a lansa și salva scripturi scrise, un terminal pentru testarea codului linie după linie (linie de linie), fereastră unicode pentru lucrul cu text și XML. Utilizatorii pot crea interfețe complexe, numite dialoguri, pentru situațiile în care dialogurile încorporate în AppleScript nu sunt suficiente.
Script Debugger (Late Night Software)
modificareCalculator IDE pentru AppleScript. Script Debugger este un mediu de dezvoltare AppleScript mai avansat, care vă permite să depanați scripturi utilizând pasul, punctele de întrerupere, urmărirea variabilelor etc. Script Debugger conține de asemenea, un dicționar avansat care permite utilizatorului să vadă dicționarul în timp real. Nu numai o listă a ceea ce acoperă dicționarul, ci abilitatea de a deschide un document, de exemplu în Pagini și de a vedea cum se aplică termenii din dicționar în acest document, ceea ce face mai ușor utilizarea unor părți ale dicționarului. Script Debugger nu este conceput pentru a crea script-uri cu o interfață grafică, cu excepția casetelor de dialog principale. Editorul este mai concentrat pe scrierea și depanarea scripturilor.
ASObjC Explorer 4 Arhivat în , la Wayback Machine. (Shane Stanley)
modificareStocarea de coduri IDE pentru AppleScript, în special pentru AppleScriptObjC. Acesta este singurul instrument AppleScriptObjC Cocoa–scripting (disponibil pe OS X Yosemite). Caracteristica principală este obiectul Cocoa, înregistrarea evenimentelor (logging), depanare și completarea codului. Utilizatorii pot citi evenimente și obiecte Cocoa, precum și alte aplicații scripted. Acest instrument este creat pentru bibliotecile AppleScript (disponibil pe OS X Mavericks). Bibliotecile AppleScript urmăresc reutilizarea componentelor AppleScript și sprijinirea dicționarului built-in AppleScript (SDEF, Standard Data Exchange Format). ASObjC Explorer 4 poate funcționa ca un editor de script extern în Xcode.
FaceSpan (Late Night Software)
modificareComponentele IDE pentru aplicația AppleScript cu grafică interfață (GUI). Dezvoltarea lui FaceSpan a fost suspendată.
Scrierea scripturilor
modificareAppleScripts poate fi rulat de la editorul de script-uri, dar, de regulă, este mai convenabil să rulați direct scripturile fără a deschide editorul. Există mai multe variante ale așa-numitului lansator.
Script Meniul
modificareSistemul oferă acces la AppleScripts din bara de meniu macOS, indiferent de ce aplicație rulează. Selectarea unui script din meniul scriptului îl lansează. În versiunile 10.6.x, meniul de script este activat din preferințele editorului AppleScript; în versiunile anterioare ale macOS, ar putea fi activat din aplicația AppleScript Utility.
Cele mai multe aplicații Apple, unele aplicații de la terți și unele add-on-uri oferă propriile meniuri de script. Ele pot fi activate în diferite moduri, dar toate funcțiile sunt similare.
Taste rapide
modificareComenzile rapide pot fi atribuite în meniul scriptului, utilizând secțiunea Setări sistem - tastatură și setări mouse. Sunt disponibile și alte utilități ale terților - QuicKeys, Spark, Quicksilver, Alfred, TextExpander.
Acțiuni de dosar
modificareFolosind folderul AppleScript, este posibil să rulați scripturi când apar anumite modificări în foldere (de exemplu, adăugarea sau ștergerea fișierelor). Acțiunile pentru dosare pot fi atribuite făcând clic pe folder și selectând Folder Actions Setup ... din meniul contextual; locația acestei comenzi în versiunile 10.6.x este puțin diferită de versiunile anterioare. Aceasta este o acțiune care poate fi folosită pentru a ajuta utilizatorii să se ocupe, așa cum Hazel.
Linia de comandă UNIX
modificareAppleScripts pot fi lansate din linia de comandă UNIX sau din programe programate folosind instrumentul osascript. Instrumentul osascript poate rula scripturi compilate (fișiere cu extensia .scpt) și fișiere text (.applescript - aceste fișiere sunt compilate folosind acest instrument). Aplicațiile Script pot fi lansate utilizând o comandă UNIX deschisă.
Asociat cu scripting
modificareAutomator
modificareAutomator este un mediu grafic, modular de editare, în care fluxurile de lucru sunt construite din acțiuni. Aplicația este proiectată să utilizeze multe funcții ale AppleScript, fără a fi nevoie de cunoștințe de programare. Automator are funcții special concepute pentru a crea și lansa AppleScript-uri într-o interfață grafică pe bază de drag-and-drop.
Aplicații de bază ale sistemului
modificareAcestea sunt aplicații de fundal ambalate în MacOS. Ele sunt folosite pentru a accesa funcțiile AppleScript care nu ar fi în mod normal prezente în scripturi. Începând cu versiunea 10.6.3, acestea includ o aplicație de scripting VoiceOver (redare audio și folosirea unui ecran braille pentru a citi un pachet), System Events (eng. evenimente de sistem) (control fără aplicații scenariu și acces la anumite funcții ale sistemului, precum și operații de bază ale fișierelor); Printer Setup Utility (eng.Utilitar de configurare a imprimantei) (utilitate pentru manipularea lucrărilor de imprimare), Image Events (motor de imagine), HelpViewer (eng. ajutor de vizualizare) (afișare ajutor), Database Events (o interfață minimă concepută pentru a lucra cu bazele de date SQLite3) și AppleScript Utility, precum și câteva aplicații utile utilizate în sistem.
AppleScriptObjC
modificareParte din pachetul Xcode, Cocoa Development Environment, care este disponibil pe CD-ul de instalare macOS, dar nu este instalat în mod implicit. AppleScriptObjC vă permite să apelați direct comenzile AppleScripts Cocoa.
AppleScript Studio
modificareO parte din pachetul Xcode din versiunile 10.4 și 10.5 nu mai este recomandată. Interfață Cocoa pentru aplicațiile AppleScript.
Scripting Additions (OSAX)
modificareSuplimente (plug-in-uri) pentru lucrul cu AppleScript, dezvoltat de Apple și de terți. Acestea sunt concepute pentru a extinde setul de comenzi încorporat, extinzând capabilitățile grupului de lucru și făcându-l mai puțin dependent de funcționalitatea oferită de aplicații. De exemplu, add-on-ul Standard Addition.osax adaugă un set de comenzi și clase care nu fac parte din funcțiile de bază ale grupului de lucru - fără această osax, AppleScript nu ar avea capacitatea de a afișa casete de dialog, de a utiliza serviciile de navigare sau de a efectua direct orice acțiune care nu sunt furnizate de cerere.
Bibliotecile AppleScript
modificareUn modul AppleScript reutilizabil scris în AppleScript în sine (disponibil pe OS X Mavericks). Acesta este un pachet de script cu unul sau mai multe scripturi. De asemenea, unele cadre sunt scrise în Obiectiv-C. Toate acestea sunt un fel de scripturi suplimentare scrise pentru a extinde capabilitățile AppleScript.
Exemple de scripturi
modificareUn calculator de siguranță:
tell application "Finder"
-- Set variables
set the1 to text returned of (display dialog "1st" default answer "Number here" buttons {"Continue"} default button 1)
set the2 to text returned of (display dialog "2nd" default answer "Number here" buttons {"Continue"} default button 1)
try
set the1 to the1 as integer
set the2 to the2 as integer
on error
display dialog "You may only input numbers into a calculator." with title "ERROR" buttons {"OK"} default button 1
return
end try
-- Add?
if the button returned of (display dialog "Add?" buttons {"No", "Yes"} default button 2) is "Yes" then
set ans to (the1 + the2)
display dialog ans with title "Answer" buttons {"OK"} default button 1
say ans
-- Subtract?
else if the button returned of (display dialog "Subtract?" buttons {"No", "Yes"} default button 2) is "Yes" then
set ans to (the1 - the2)
display dialog ans with title "Answer" buttons {"OK"} default button 1
say ans
-- Multiply?
else if the button returned of (display dialog "Multiply?" buttons {"No", "Yes"} default button 2) is "Yes" then
set ans to (the1 * the2)
display dialog ans with title "Answer" buttons {"OK"} default button 1
say ans
-- Divide?
else if the button returned of (display dialog "Divide?" buttons {"No", "Yes"} default button 2) is "Yes" then
set ans to (the1 / the2)
display dialog ans with title "Answer" buttons {"OK"} default button 1
say ans
else
delay 1
say "You haven't selected a function. The operation has cancelled."
end if
end tell
O secvență simplă de nume de utilizator și parolă de dialog. Aici, numele de utilizator este John și parola este app123:
tell application "Finder"
set passAns to "app123"
set userAns to "John"
if the text returned of (display dialog "Username" default answer "") is userAns then
display dialog "Correct" buttons {"Continue"} default button 1
if the text returned of (display dialog "Username : John" & return & "Password" default answer "" buttons {"Continue"} default button 1 with hidden answer) is passAns then
display dialog "Access granted" buttons {"OK"} default button 1
else
display dialog "Incorrect password" buttons {"OK"} default button 1
end if
else
display dialog "Incorrect username" buttons {"OK"} default button 1
end if
end tell
Note
modificare- ^ „OS X 10.10 Yosemite release date”. Accesat în .
Vezi și
modificare- BBEdit, editor de text
Legături externe
modificareWikibooks are o carte despre subiectul: AppleScript Programming |
- Site web oficial
- AppleScript pe Curlie
- „AppleScript for Python Programmers (Comparison Chart)”. aurelio.net. . Accesat în .
- „AppleScript Language Guide [html]”. developer.apple.com. . Accesat în .
- „AppleScript Language Guide [pdf]”. citeseerx.ist.psu.edu. CiteSeerX. . Accesat în .
- „Doug's AppleScripts for iTunes”. dougscripts.com. Accesat în .
- „Mac OS X Automation”. macosautomation.com. Accesat în .
- „MacScripter AppleScript community”. macscripter.net. Accesat în .