AppleScript

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

AppleScript je skriptovací jazyk, který vyvinula firma Apple Inc., a zakomponovala do operačního systému Mac OS X. Obecně se výraz AppleScript používá pro skriptovací rozhraní, které je navrženo s ohledem na komunikaci s grafickým uživatelským rozhraním (GUI).

Základní pojmy[editovat | editovat zdroj]

AppleScript byl navržen s ohledem pro použití koncovými uživateli. Nabízí uživatelům rozumný mechanismus pro ovládání aplikací, pro přístup a úpravu informací a dokumentů. AppleScript může být použit pro vytvoření automatizovaných akcí, které mohou ušetřit potřebný čas pro zpracování různých úkolů. Dále snižuje riziko vzniku chyby při spravování úkolů člověkem a poskytuje konzistentní výstup.

Důležitou vlastností AppleScript je, že jeden skript lze použít pro více aplikací a případně se dají předávat data mezi aplikacemi. Předávání informací je možné, protože všechny programy pro MAC používají standardní rozhraní Apple Events pro komunikaci s operačním systémem. AppleScript využívá předávání informací a umožňuje aplikacím komunikovat mezi sebou navzájem.

Např. AppleScript může otevřít fotku ve Fotoeditoru, snížit rozlišení, přidat rámeček a hodnocení, uložit fotku s příznakem pro web a následně pro fotku vytvořit hypertextový odkaz. Akci lze provést pro jakýkoli počet fotek a v neposlední řadě vytvořit foto album. Případně může dále nahrát galerii na web pomocí FTP klienta. Pro uživatele, který by v tomto případě musel dělat několik set kroků, lze celou akci redukovat pouze na jediný krok a to spuštění skriptu. Rozsáhle skripty mohou být spuštěny jen jednou, zatímco jiné skripty se nechají spouštět stále dokola.

Skoro všechny aplikace používají stejné číselné příkazy (otevřít soubor, zavřít dokument, vytisknout, uložit, ukončit, atd.). Každá skriptovatelná aplikace používá AppleScript terminologii, která je součástí Apple Event slovníku. AppleScript využívá tento slovník k určení platného příkazu od aplikace. Apple Event slovník je distribuován jako součást aplikace, hodnotnou vlastností pro spoustu aplikací je podpora pluginů, kde pluginy mohou být skriptovatelné a zahrnovat Apple Event slovník pro komunikaci s aplikací za běhu. Pro zobrazení aplikace AppleScript slovníku, stačí otevřít aplikaci ve Script Editoru. Script Editor je uložen ve složce aplikace a umožňuje uživateli zobrazit příkazy, kterým aplikace rozumí a které lze použít pro skript.

Program Hello World![editovat | editovat zdroj]

V AppleScript, klasický program Hello World! Program je napsán v AppleScript Editor:

display dialog "Hello World!"

Výsledkem toho jednoduché skriptu je klasický Max OS X dialogové okno s dvěma tlačítky "Cancel" a "Ok". V AppleScript můžeme nadefinovat, jak se mají jednotlivá tlačítka chovat a jaký mají mít popisek. Například změna popisku tlačítka vypadá následovně.

display dialog "Hello World!" buttons {"Hello", "Exit"}

AppleScript v operačním systému Mac OS X[editovat | editovat zdroj]

AppleScript podporuje spousta Mac OS X aplikací, jak od Applu tak i třetích stran. Skriptovatelné aplikace jsou například Apple's Finder, Safari, iPhoto, a iTunes, stejně tak dobře Adobe Illustrator a Photoshop, Bare Bones BBEdit a TextWrangler, Microsoft Word a Excel, VMwareFusion a mnoho dalších.

Recordable aplikace[editovat | editovat zdroj]

Některé aplikace umí poslat Apple Events, když klikneme na jejich menu nebo ve chvíli, kdy provedeme nějaké akce s rozhraním. Těmto aplikacím říkáme "recordable" (tj. zaznamenatelné), protože Script Editor může zaznamenávat provedené akce uživatelem a následně vytvořit AppleScript makro.

Každopádně při zaznamenávání skriptu nelze tento skript spustit. Nicméně můžete provádět všechno ostatní, přesouvat myš, přidávat, editovat nebo mazat kód, dokonce i kompilovat script.

Záznamových aplikace spolupracuje v jistém smyslu se vaše psaní AppleScript, spíše než ho nahradit. Vyplatí se kombinovat zaznamenaná makra s napsaným AppleScript. Tento přístup obvykle přinese více praktických výsledků, než abychom se snažili zaznamenat celý skript od začátku do konce.

Pouze malá část skriptovatelných aplikací má funkci recordable (v Mac OS X téměř žádné aplikace již tuto funkci nenabízejí). Například Finder a BBEdit. Zkoumat kód, který je vytvořen recordable aplikací pomáhá k správnému pochopení a psaní skriptů pro aplikace.

Vývojové prostředky pro AppleScript[editovat | editovat zdroj]

AppleScript Editor[editovat | editovat zdroj]

AppleScript Editor (tzv. Script Editor ve verzích OS X před 10.6 Snow Leopard) je editor pro AppleScript, který je součástí Mac OS X. Skripty jsou zapsány v souboru, připravené k editaci a případně je možné je sestavit a spustit přímo v editoru. Skripty mohou být rovněž uloženy jako aplikace AppleScript (applety) nebo jako kompilované skripty. Script Editor také poskytuje přístup k referenční knihovně Apple Events, která odpovídá skriptovatelným aplikacím na vašem počítači, a mohou se zaznamenávat události a výsledky z běhu AppleScript Editor pro účely ladění.

XCode[editovat | editovat zdroj]

Ve vývojovém prostředí XCode lze vyvíjet aplikace pomocí jazyka AppleScript (kompilované) včetně grafického rozhraní stejně jako v ObjectiveC nebo C/C++.

AppleScriptObjC[editovat | editovat zdroj]

AppleScriptObjC je nový framework (od Mac OS X 10.6), který umožňuje napsat Cocoa aplikaci v jazyce AppleScript. Je to náhrada AppleScript Studia.

AppleScript Studio[editovat | editovat zdroj]

AppleScript Studio je framework (od Mac OS X 10.2), který umožňuje psát kompilované aplikace v jazyce AppleScript (je součástí XCode). V Mac OS X 10.6 Snow Leopard byl nahrazen AppleScriptObjC a jeho vývoj nepokračuje.

Automator[editovat | editovat zdroj]

Automator umožňuje grafickou, drag-and-drop editaci a vytváření pracovních postupů spojením několika modulů, nebo akcí, (které mohou být vytvořeny v několika jazycích, včetně AppleScript), bez potřebných znalostí kódování AppleScript. Postupy mohou být uloženy jako aplikace pro pozdější použití. Automator je součástí Mac OS X 10.4 a vyšší.

Script Menu[editovat | editovat zdroj]

Rozšířený systém skriptovacího menu umožňuje přístup do AppleScripts z menu Mac OS X, bez ohledu na běh aplikace. Skript lze spustit z menu zvolením položky.

Script menu je možné aktivovat pomocí AppleScript utility. Při první aktivaci se načte defaultní nastavení pro menu se základními skripty. Script menu můžeme opět upravit ve Script Editoru podle svých představ. Například jednotlivým položkám přiřadit klávesovou zkratku.

Pár aplikací (jako například BBEdit a Xcode) mají svoje vlastní skriptovací menu, které zobrazuje pouze skripty používané zásadně v této aplikací.

AppleScript Utility[editovat | editovat zdroj]

Aplikace AppleScript Utility se nachází v adresáři AppleScript, která je ve složce Mac OS X Aplications. AppleScript Utility dovoluje uživatelům nastavit Script Editor do defaultního nastavení, povolit GUI skriptování, nastavit složku pro akce a zobrazit Script Menu v menu baru.

Script Debugger[editovat | editovat zdroj]

Script Debugger od Late Night Software, je komerční IDE vývojové prostředí pro AppleScript. Script Debugger je pokročilejší prostředí, které umožňuje ladit skripty přes krokování, breakpointy, krokování funkcí / podprogramů, sledování proměnných atd. Script Debugger rovněž obsahuje pokročilý slovník, který umožňuje uživatelům vidět, jak se slovník chová při běhu v reálu. Script Debugger není navržen pro tvorbu GUI scriptů, sice dovoluje navrhnout základních upozornění a dialogová okna, ale je spíše zaměřen na kódování a ladění skriptů.

FaceSpan[editovat | editovat zdroj]

FaceSpan od Late Night Software, je IDE vývojové prostředí třetí strany pro tvorbu AppleScript aplikací pomocí GUI. Vývoj FaceSpan je v současné době pozastaven.

Smile[editovat | editovat zdroj]

Smile, z Satimage je vývojové komerční IDE prostředí třetí strany pro vytváření AppleScriptu. Smile je vyspělejší prostředí než Script Editor od Apple.