Apple nije poznat po tome što dozvoljava preveliku fleksibilnost na svojim platformama, a strogo čuvana iOS okolina je dobar primer toga. Iako je moguće prilagoditi je, to često podrazumeva određene rizike, poput onih povezanih sa jailbreak-om. Međutim, situacija sa macOS-om je malo drugačija. Mac je sofisticirana verzija Unixa, prilagođena Apple-ovom stilu. Postoje različite mogućnosti prilagođavanja koje možete iskoristiti da bi vaš Mac obavljao određene zadatke automatski, čime biste olakšali svakodnevni rad. Za postizanje ovog cilja, Apple je još 1993. godine kreirao AppleScript. Ovaj alat omogućava korisnicima da automatizuju osnovne funkcije na Macu, pa čak i da postignu značajan nivo automatizacije. Ako želite da prilagodite svoje Mac iskustvo pomoću osnovnih skripti, u nastavku je objašnjeno kako to možete učiniti.
Važno je napomenuti da vam možemo predstaviti samo osnove Apple-ovog automatizovanog skriptnog jezika i kako ga koristiti. Ne možemo vas učiniti ekspertima u ovoj oblasti. To ćete morati sami da postignete, ali ako uspete, vaš način korišćenja računara će se drastično promeniti. Zamislite bezbrojne zadatke koje svakodnevno ponavljate, koji sa svim operativnim sistemima predstavljaju poteškoću, a koji nestaju jednim klikom. Možete da automatizujete razne zadatke, od sortiranja ikona na radnoj površini, do praćenja radnih sati, unosa podataka u Excel i slanja e-pošte. Sve to pritiskom na dugme. Ovladavanje ovim mogućnostima je definitivno vredno truda.
Osnove AppleScript-a
AppleScript, za razliku od komplikovanog Objective-C-a i manje kompleksnog, ali i dalje ne tako jednostavnog Swift-a, je skriptni jezik koji koristi običan engleski. Za njegovo korišćenje nije potrebno imati diplomu iz programiranja. Potrebno je samo da razumete kako da date instrukcije računaru. Na primer:
tell application "Finder"
display dialog "Hello World"
end tell
Sintaksa
U programiranju postoje određene konvencije. To podrazumeva definisanje kada program treba da počne, šta treba da uradi kada počne i kada treba da se završi. Dakle, struktura postaje: [komanda] [tip mete] [ime mete] [radnja] [kraj komande]. Ovo je pojednostavljen prikaz, ali ako pišete kod i nešto pođe po zlu, najverovatnije je da vašem kodu nedostaje jedan ili više od navedenih parametara.
Jednostavnije rečeno, postoji „blok za izvršavanje“ u kojem „govorite“ aplikaciji šta želite od nje. Kao što gornji kod govori Finderu da prikaže dijalog prozor koji sadrži tekst „Hello World“ (ili bilo koji tekst koji ste odlučili da testirate). Kada završite sa davanjem komande, upisujete „end tell“. Kao što smo već rekli, to je mašina, tako da morate da joj kažete gde da završi, inače će odbiti da se prevede (kompajliranje je proces pretvaranja koda u izvršnu datoteku).
Kompajliranje
Nakon što završite sa pisanjem koda, pritisnite dugme za kompajliranje. Ukoliko postoje sintaksne greške (uglavnom greške u kucanju), program će vam reći šta je greška (u skladu sa svojim mogućnostima). Ukoliko nema grešaka, vaš kod će se automatski formatirati i obojiti.
Pokretanje
Nakon kompajliranja, pritisnite dugme „run“ i to je to. U zavisnosti od zadatka koji ste definisali, biće kreiran zapis u log fajlu. Primeri za oba scenarija su prikazani ispod. „Povratak“ je čin prihvatanja vašeg unosa u mašinu. Ako ste razumeli do sada, možemo preći korak dalje i definisati promenljive.
Promenljive
Ako ste upoznati sa programiranjem, makar i površno, onda ste verovatno upoznati sa promenljivama. Za one koji nisu, promenljive su jednostavan način da se sažme velika količina informacija u jedan niz kojim se lako manipuliše. Način na koji se to radi razlikuje se od jezika do jezika. U AppleScript-u, možete koristiti sledeći pristup:
set varExample to "Hello World"
tell application "Finder"
display dialog varExample
end tell
Ovde je „varExample“ ime koje smo dali našoj definisanoj promenljivoj. Sada, ako ponovo treba da prikažemo „Hello World“ u ovoj skripti, potrebno je samo da pozovemo „varExample“ i nećemo morati ponovo da pišemo sav kod. Rezultat bilo kog koda, složenog ili jednostavnog, može se dodeliti promenljivoj i pozvati kada je potrebno. Kao što vidite, kompajliranjem gornjeg koda dobijamo isti rezultat kao i ranije. Nove reči, „set“ i „to“, impliciraju da dodeljujemo vrednost koja u osnovi postavlja [ovo] na [ono]. Jednostavno je. Iskusni programeri će ceniti da ne postoji potreba za definisanjem tipa promenljive, jer AppleScript može sam da upravlja time. Važno je zapamtiti da u imenima promenljivih ne sme biti razmaka, jer će ih kompajler tumačiti kao komandu.
Takođe, ukoliko upišete nešto nakon dvostruke crte ( „–“ ), kompajler će to smatrati komentarom i ignorisaće ga. Ovo je korisno, jer možete sebi ostaviti beleške o tome šta radite. To će vam biti potrebno ukoliko vaš kod postane kompleksan.
Možete slobodno da eksperimentišete sa promenljivama. Ispod je primer koji možete kopirati i nalepiti (ili probajte sami, ako želite):
--Numeričke/celobrojne promenljive set theFirstNumber to 1 set the theSecondNumber to 2
--Operacije nad promenljivama set theAnswer to (theFirstNumber + theSecondNumber) set theAnswer to (theAnswer + 1)
--String promenljive set theString to "3+2+1="
--Prikazivanje dijaloga tell application "Finder"
display dialog theString & theAnswer
end tell
Ovaj kod ne postiže ništa posebno osim prikaza teksta i osnove aritmetike. On je samo primer koji ilustruje šta možete postići uz pomoć AppleScript-a.
Rečnik
Sve navedeno je samo uvod u radno okruženje. Kada se sa njim upoznate, preći ćemo na složeniji deo: upoznavanje sa rečnicima. AppleScript ima niz komandi koje se primenjuju na bilo koji program ili stavku unutar macOS-a. Međutim, programeri svake aplikacije moraju da dodaju punu podršku za AppleScript svojim aplikacijama. Za to, oni pišu jednostavna uputstva o tome kako možete da komunicirate sa njihovim aplikacijama. Ova uputstva se nazivaju „Rečnici“. Idite na „File“, pa „Open Dictionary“. Ovde ćete videti listu svih instaliranih aplikacija (osim Windows aplikacija koje rade kroz emulator) koje podržavaju AppleScript. Kliknite na bilo koju aplikaciju i videćete listu komandi za prilagođavanje i kako da ih koristite. Otvorićemo Evernote kao primer. Možete videti sve komande koje podržava.
Prilagođavanje AppleScript editora
Ako pogledate „AppleScript Editor“ u meniju „File“ i kliknete na „Preferences“, naći ćete listu svih boja i formata za vaš AppleScript, koju možete da prilagodite. Formatiranje je samo za vašu informaciju, i nije od suštinske važnosti za samo skriptovanje.
Zaključak
Da ne bismo preopteretili korisnike, ovde ćemo završiti ovo uputstvo, kako biste mogli da se upoznate sa alatkom i isprobate neke od opcija. Nastavite da nas pratite, jer ćemo uskoro dati sledeći korak – kreiranje prilagođenih skripti. Javite nam u komentarima kako vam je proteklo prvo iskustvo sa AppleScript-om.