Какво е AppleScript. Скриптове за Mac OS X: Първи стъпки в програмирането с AppleScript панел с допълнителни бутони

В тази статия ще научите какво е AppleScript, защо и кой се нуждае от него, как можете да автоматизирате приложенията на други хора и да добавите възможност за автоматизиране на вашите собствени.

Автоматизирайте го

Често има такива задачи, за които е нерационално да се прави отделен проект на компилиран език. Например, когато трябва бързо да създадете код на коляно, който просто трябва да върши конкретна работа - без никакви GUI декорации, обработка на всякакви изключения, оптимизации и т.н. Тук се намесват скриптовите езици - shell, Perl, PHP и така нататък, както знаете. Всички те (е, почти всички) са достъпни и под Mac OS X. Но в допълнение към общоприетите скриптови езици, тази операционна система има и специален скриптов език, който е фокусиран конкретно върху Mac OS X и е тясно свързан с него . Това е AppleScript.

AppleScript е в системата от System 7. Израствайки от проекта HyperCard (който съдържа скриптовия език HyperTalk, много подобен на естествения английски), AppleScript първоначално е създаден, за да осигури комуникация между задачи, както и да контролира работата на трети -партийни приложения. Сам по себе си AppleScript има доста скромна функционалност: на този език дори скриптовете за изпълнение на относително прости задачи често изглеждат като обаждания към други приложения. Въпреки това, след значително преразглеждане на системата при прехода към линията Mac OS X, езикът AppleScript стана по-гъвкав и мощен, а новата рамка на Cocoa позволи на разработчиците да вградят автоматизация на AppleScript в своите приложения с минимални усилия.

Прост сценарий

Ще използваме стандартния редактор на скриптове за редактиране и изпълнение на скриптове. Можете да го намерите в папката /Application/AppleScript. Първо, нека напишем прост скрипт "HelloWorld".

показване на предупреждение "Hello World!" # Показване на диалогов прозорец
кажете "Здравей свят" # Извеждане в колони

Мисля, че няма нужда да обяснявам тук, но бих искал да отбележа изключително лесния достъп до речевия синтезатор от AppleScript с помощта на командата say. Това е истинската комуникация с потребителя Ябълков стил:). Разбира се, този диалогов прозорец може лесно да се персонализира. Например добавете необходимите бутони:

Панел с допълнителни бутони

показване на предупреждение "Hello World!" бутони ("Здравей", "Чао")
задайте отговор на бутона, върнат от резултата
ако отговорът е "Здравей", тогава
...
друго
...
край ако

Сега да напишем нещо по-полезно. Например, нека позволим на потребителя да избере файл и да прочете съдържанието му:

# Панел за избор на файл
задайте файл на (изберете файл с подкана "Изберете файл за четене:" от тип ("ТЕКСТ"))
отворете за достъп файла

Четене на съдържание

задайте FileContents на (прочетете файла)
затворете достъпа до файла

Тези примери ясно показват основната идея на AppleScript - той е много близо до живота английски език. Следователно четенето на скриптове е лесно дори за човек, който е далеч от кодирането. Всяка глаголна команда може да бъде допълнена със съществителни модификатори и параметри.

Взаимодействие с приложения

За да комуникира с други приложения, AppleScript използва механизъм за съобщения:

кажи приложение" Майкрософт Уърд"
напусни
край кажи

Чрез командата tell изберете приложението, на което ще изпратим съобщение. В този случай молим MS Word да излезе. В блока "кажи - край на кажи" могат да бъдат изпратени произволен брой команди. Съобщенията, които се изпращат до приложението, могат да бъдат по-конкретни. Всичко зависи от това какви команди са въведени от неговите разработчици. iTunes, например, експортира доста команди и свойства в средата на AppleScript:

Стартиране на желания плейлист в iTunes

кажете на приложението "iTunes"
възпроизвеждане на плейлиста с име „Моите любими“
край кажи

Можете да разберете набора от съобщения и типове данни, които едно приложение експортира в средата на AppleScript, като разгледате неговата терминология (файлът AppName.scriptRerminology в ресурсите на приложението). За да направите това, в редактора на скриптове отидете в менюто „Файл - Отваряне на речник - ...“ и изберете желаното приложение.

За да ви улесни работата с класовете и командите, които приложението експортира, те са организирани в секции. Всички приложения, които поддържат скриптове, имат поне два раздела: един стандартен и един по-специфичен за това приложениесекции. Стандартният раздел съдържа набор от стандартни команди, които всяко приложение на Mac поддържа: отваряне, печат, затваряне и излизане. Съдържанието на останалите секции зависи от въображението на разработчиците.

Изпълнение на AppleScript от вашето приложение

Ако пишете приложение в Objective-C/Cocoa, тогава може да е по-удобно да правите някои неща с помощта на AppleScript. За създаване и изпълнение на скриптове в приложения на Cocoa има клас NSAppleScript. Ето един прост пример за използването му - изпълнението на получаване на реда за състоянието на потребителя от приложението iChat.

NSAppleScript *iChatGetStatusScript = нула;
iChatGetStatusScript = [ initWithSource: @"кажете на приложението "iChat" да получи съобщение за състояние"];
NSString *statusString = [stringValue];

Възможно е същото да може да се направи по друг начин, без да се използва скриптът, генериран по време на изпълнение, но е малко вероятно алтернативният код да изглежда по-прост от този. Ако скриптовете са големи, можете да ги съхранявате в ресурсите на пакета и да ги прочетете, ако е необходимо.

Автоматизация в приложение на Cocoa

Много е полезно да добавите поддръжка за скриптове към вашите Cocoa приложения, защото ако вашето приложение има интерфейс към AppleScript, тогава потребителят, като напише няколко реда в AppleScript, ще може да го персонализира за своите нужди и да го интегрира с други приложения че е инсталирал, а след това, например, автоматизирайте рутинни задачи. За да експортирате типове и команди в средата на AppleScript, те трябва да бъдат описани в специални файлове. Възможно е да направите това във файловете .scriptSuite и .scriptTerminology или в един файл .sdef. И в двата случая файловете са в XML формат, но със sdef се работи по-лесно.

Съдържанието на файла scriptTermonology се показва в редактора на скриптове, когато преглеждате речника на приложението. Този файл съдържа описанието на обектите, експортирани в AppleScript.

Отваряйки файла scriptSuite в Plist Editor, можете да видите, че той съдържа следните основни секции:

  • AppleEventCode - четирибуквен код, който идентифицира приложението за AppleScript среда (кодът трябва да е уникален в рамките на една система);
  • Име - името на секцията, която съдържа експортираните команди и класове.

Няма смисъл да разглобявате вътрешната структура на тези файлове, тъй като най-вероятно ще трябва да работите само с sdef файлове.

sdef файл пример
















sdef смесва скриптова терминология с Подробно описаниекоманди и типове, които могат да бъдат намерени във файловете .scriptingSuit. Нека приложим това на практика, като създадем приложение Cocoa, което поддържа AppleScripting. За да направите това, в новия проект Cocoa добавете флага Scripting и OSAScriptingDefinition към файла Info.plist с името на нашия sdef файл:

...
NSAppleScript е активиран

OSAScriptingDefinition
Scrtipting.sdef

Нека добавим файл Scripting.sdef към проекта със следното съдържание:












И така, от AppleScript имаме едно налично свойство - myprop. Остава да напишем ObjC код, който ще обработва четенето даден имотот скриптове. За да направите това, трябва да създадете категорията NSApplication, тъй като това е класът, който избрахме като получател на съобщения от скриптове.

#импортиране
@interface NSApplication (Скриптове) - (NSString *) myprop;
@край
@implementation NSApplication (Скриптове) - (NSString *) myprop
{
return @"Това е моя собственост";
}

Ако сега се обърнем към свойствата на нашето приложение от AppleScript, ще видим нашето свойство и неговата стойност сред тях:

кажете на приложението "Скриптове"
Имоти
край кажи

Заключение

Разбира се, тук е невъзможно да се опишат всички възможности на AppleScript и взаимодействието му с приложенията на Cocoa. Да, това не е необходимо - има ръководства за това. А ние, от своя страна, ще продължим поредицата от статии за кодиране за платформи на Apple и ще ви разкажем още много нови и интересни неща.

AppleScript е мощен език за програмиране, който датира от Mac OS 7. Но въпреки своята зрялост, опитни Mac програмисти често критикуват AppleScript, че е твърде прост, лесен за научаване и твърде подобен на обикновения английски.

Разбира се, че бихте искали компютърен езикпритежаваше точно тези качества - ако, разбира се, изобщо имаш нужда от компютърен език. AppleScript е най-простият езикпрограмиране, с което можете да автоматизирате вашия Mac, дори ако сте обикновен потребител, а не компютърен учен.

AppleScript програмите (наречени скриптове или скриптове) могат да се считат за софтуерни роботи. Един прост AppleScript може да изпълнява някои обикновени задачи като архивиране на папката Documents. По-сложен скрипт може да обхваща няколко страници. В професионалното публикуване, където AppleScript е най-популярен, скриптът може да се свърже през интернет с твърдия диск на фотографа, да извлече снимката от определена папка, да я коригира по цвят във Photoshop, да постави резултата в определен документ с оформление, да отпечата грубо оформление , изпратете имейл известие до редактора—и всичко това става автоматично.

Без дори да го знае, потребителят непрекъснато използва основната AppleScript технология. Множество компоненти на Mac комуникират зад кулисите, използвайки Apple Events, съобщения, които предават инструкции или данни от програма на програма. Ако командата Show Original се приложи към псевдоним или командата Get Info се приложи към файл (папка), тогава събитието на Apple ще каже на Finder как да отговори на него.

AppleScript превъзхожда Automator по редица начини, не на последно място поради своята мощност. И още нещо: AppleScript е толкова дълбока тема, че трябва да бъде посветена на отделна книга. Тази глава е просто вкусно предястие: книга като AppleScript: The Essential Guide би била ястие със седем ястия.

съветМожете да изтеглите цялата глава за AppleScript, която се появи в предишно издание на тази книга, от страницата Missing CD на www.missingmanuals.com.

Не е нужно да пишете AppleScript, за да се насладите на плодовете на тази технология. Mac OS X идва с десетки скриптове, които са наистина полезни и за да изпълните някой от тях, просто изберете името му в менюто. Този вид „възпроизвеждане“ на AppleScript изисква точно толкова технически умения, колкото натискането на бутон в асансьор.

Можете да изпробвате някои от тези страхотни начални скриптове, като добавите меню за скрипт към лентата с менюта (Фигура 7-16, вдясно).

Менюто със сценарии има 16 готови категории, обединяващи около 100 сценария; за да стартирате скрипт, просто изберете името му. Ето списък с най-полезните и интересни сценарии.

съветАко задържите клавиша Shift, докато избирате име на скрипт в менюто, Mac OS X ще ви отведе директно до мястото, където се намира скриптът във Finder (например в папката Home>Library>Scripts). Освен това, ако натиснете клавиша Option, докато избирате име, скриптът ще се отвори в редактора на скриптове, където можете да го прегледате или редактирате.

Това подменю съдържа само скрипта за импортиране на адреси, който е предназначен за копиране на имена и адреси от Entourage в програмата за адресна книга, Outlook Express, Palm Desktop, Eudora, Claris Emailer или Netscape. Ако имате много приятели, използвайте този скрипт, за да не се налага да въвеждате отново всичките им имена, телефонни номера и пощенски адреси. (Придружаващата подпапка Address Importers предлага скриптове за импортиране от три конкретни програми.)

Подменюто Basics съдържа три удобни малки скрипта, свързани с AppleScript: AppleScript Help (отваря Help Viewer и търси думата AppleScript); AppleScript уебсайт (отваря AppleScript уеб страница във вашия уеб браузър) Open Script Editor (отваря програмата Script Editor за четене и редактиране на AppleScript скриптове).

Тази папка съдържа група скриптове ColorSync от капков тип (такъв скрипт се изпълнява, ако плъзнете нещо върху неговата икона), представляващи интерес за художници, дизайнери на уебсайтове, издатели и т.н.

В някои случаи, когато изберете скрипт от това меню, ще видите кратко информационно съобщение и след това диалогов прозорец Отваряне, за да изберете графичен файлда бъдат обработени.

Други действат незабавно; например скриптът за компютърен монитор Mimic настройва цветовете на екрана, за да съвпадат точно с леко различни нюанси на компютърен монитор с Windows. Това е много удобно, ако работите върху

КУРСОВЕ ЗА ОПИТ
Тайните на менюто на скрипта
Менюто на скрипта показва съдържанието на две различни папкиСкриптове: единият от тях е Home>Library>Scripts, а другият е в главната папка Library. Сценариите, които са взети от вашата лична папка, са разделени с пунктирана линия в менюто със сценарии.

Тези скриптове могат не само да се изпълняват. Те също са идеални за отварянето им в редактора на скриптове (просто чрез двукратно щракване) и анализиране ред по ред как работят. След като разберете синтаксиса, можете да копирате кодови фрагменти и да ги модифицирате, за да ги използвате във вашите скриптове. (Script Editor е програма, намираща се в папката Applications > AppleScript, която ви позволява да създавате свои собствени скриптове.)

Снимка или уеб страница и искате да знаете как ще изглежда в очите на непросветените маси. (За да възстановите оригиналните цветове, отидете в раздела Цвят (Цвят) панел Дисплей (Мониори) в прозореца Системни предпочитания (Системни настройки).)

Всички тези сценарии са свързани с работа във Finder - да речем, с манипулиране на файлове и прозорци. Ето най-полезните от тях:

Добавяне към имена на файлове, Добавяне към имена на папки. Тези скриптове добавят префикс или суфикс към името на всеки файл или папка в предния (активен) прозорец на Finder (или, ако не отворени прозорци, на работния плот). С тези скриптове можете да добавите думата "чернова", "окончателна" или "стара" към имената на всички файлове в папка.

Замяната на текст в имената на елементи ви позволява да извършвате търсене по заместване в имената на файлове, папки или и двете. Ако един издател отхвърли вашето предложение за книга от 45 глави, този скрипт може да преименува всичките 45 глави от „История на подложката за мишка – Предложение за случаен дом, глава 1“ на „История на подложката за мишка – Предложението на Саймън“ и Шустър, глава 1“.

Изрязване на имена на файлове, изрязване на имена на папки. Ако сте направили грешка, когато сте изпълнили скрипта Добавяне към имена на файлове, винаги можете да я поправите с Изрязване на имена на файлове. Този скрипт премахва файлови разширения, суфикси или префикси по избор на потребителя.

Да приемем, че току-що сте създали няколко нови папки наведнъж. Mac OS X нарича такива папки „папка без заглавие“, „папка без заглавие 2“ и т.н. Но какво ще стане, ако ви е по-удобно с имената „папка 1“, „папка 2“ и т.н.? Стартирайте скрипта Trim Folder Names; Въведете untitled в диалоговия прозорец и щракнете върху OK.

Вероятно няма да използвате широко скриптове за действия с папки, тъй като точно същият достъп до операциите с папки се осигурява чрез щракване с Control върху папка (или в нейния прозорец)

Тези скриптове демонстрират как можете да автоматизирате някои задачи, свързани с шрифтове.

FontSync е благородният опит на Apple да разреши стар проблем с настолното публикуване. Така че приключихте със създаването на красив бюлетин и го занасяте в местната печатница, за да бъде отпечатан на висококачествено оборудване, само за да откриете, че трябва да изхвърлите разпечатките и да започнете всичко отначало - и то само защото шрифтовете не изглеждайте както искате.. Печатницата не разполагаше точно с тези шрифтове, с които сте подготвили документа. Или, още по-лошо, шрифтовете са имали абсолютно еднакви имена, но са създадени от друга компания и следователно са се различавали леко от вашите по определени параметри.

Идеята на FontSync е да уведоми потребителя предварително за възможни несъответствия. Скриптът Create FontSync Profile създава профилен файл на FontSync за няколко минути. Този документ съдържа зашеметяващо количество информация за дизайна, разстоянието и извивките на всички шрифтове, инсталирани в системата. В печатница такъв документ може да бъде обработен с допълнителен скрипт Match FontSync Profile. Той стриктно ще идентифицира разликите в шрифтовете между Mac на потребителя и машините на печатницата.

Разбира се, тази технология имплицитно предполага твърде много: че Macintosh компютрите са инсталирани в печатницата, че те могат да работят с FontSync, както и че потребителят няма да забрави да създаде и прехвърли FontSync профила предварително в печатницата.

IChat претърпя значителен редизайн в 10.5 - Apple добави много интересни (макар и понякога безполезни) функции. По-специално, стана възможно да стартирате AppleScript като сигнали, когато настъпи събитие, свързано с вашите контакти. Например, можете автоматично да приемате покани за чат от отделни контакти или дори да им отговаряте с предварително направен поздрав. Можете дори да контролирате възпроизвеждането на музика на един Mac, като въведете команди в прозореца на iChat на друг Mac във вашия дом. Подробности в глава 21.

Тези два сценария са малко полезни. Current Date & Time показва текущата дата и час в диалогов прозорец, оборудван с бутон Clipboard за копиране на информация, готова за поставяне. Font Sampler показва страница със списък на шрифтовете (именувани в скрипта), които са инсталирани с Mac OS X. (Скриптът е станал по-малко полезен, тъй като Font Book има подобни вградени команди за печат.)

Два сценария в това меню заслужават специално внимание. Current Temperature by Zipcode показва каква е температурата извън прозореца - Фаренхайт и Целзий. Това е още една причина да не излизате от вкъщи цял ден.

Stock Quote получава борсовите котировки на избраната компания със закъснение от 20 минути. Не е толкова страхотно, колкото получаването на котировки в реално време, но е безплатно.

Повечето от скриптовете в това подменю решават някои специфични задачи, като например преброяване на имейли във вашите имейли. пощенски кутииили създаване на нов акаунт. Най-смешният от всички, разбира се, е скриптът Crazy Message Text (Фигура 7.17).

Скриптовете в тази папка ви позволяват да навигирате до специални папки на Finder - направо от менюто, от всяка програма. Ако папката, която искате да отворите, няма зададен персонализиран скрипт, изберете го от списъка в скрипта за отваряне на специална папка.

съветТези, които нямат нищо против да редактират този скрипт с редактора на скриптове, могат да го модифицират, за да позволят избирането и отварянето на повече от една папка едновременно (чрез, да речем, пряк път -щракване). Всичко, което трябва да направите, е да въведете множество селекции разрешени вярно веднага след Изберете папка за отваряне: (в края на реда, приблизително в началото на втората третина от скрипта). Не забравяйте да запазите промените си.

Тези скриптове са предназначени да демонстрират силата на AppleScript при отпечатване и създаване на PostScript и PDF документи.

Един от тях, Print Window, затваря дългогодишна празнина в Mac OS X. Той трябва да отпечата текстов списък на съдържанието на всяка избрана папка. (Разбира се, това е малко бъги.)

Според екипа за тези скриптове, тези 48 предварително направени скрипта ви помагат да пишете по-бързи и по-точни скриптове, тъй като кодовите фрагменти са без правописни и синтактични грешки. Когато станете по-добри, ще можете да добавяте свои собствени скриптове тук с кодови фрагменти, съобразени със скриптовете, които обикновено пишете, за да направите работата си още по-ефективна. (Когато създавате скрипт в редактора на скриптове, вие вмъквате тези кодови фрагменти в текст, като използвате комбинация от Control-click и избор от менюто бърз достъп.)

В по-голямата си част скриптовете вършат работата си тихо и незабелязано. Но ако искате да автоматизирате програма, която не разбира обикновените команди на AppleScript, скриптовете могат да я „управляват“ ръчно, като симулират избор на меню, натискане на бутони и т.н.

ЗабележкаТази функция, наречена скриптове за потребителски интерфейс (UI), ще работи само след като отворите конзолата за универсален достъп на програмата за системни предпочитания и поставите отметка в квадратчето Разреши достъп за помощни устройства. помощни устройства).

Няма смисъл да изпълнявате скриптовете от подменюто Скриптове на потребителски елементи такива, каквито са: те са само примери, които демонстрират правилния синтаксис.

Този последен набор от скриптове осигурява бърз достъп до някои популярни уебсайтове. Изключение прави скриптът Download Weather Map, който изтегля текущата метеорологична карта за континенталните Съединени щати, записва я на работния плот като weathermap.jpg и след това я отваря в Preview.

съветМожете да добавяте скриптове, файлове и дори интернет адреси към менюто и след това е лесно да ги стартирате всички от лентата с менюта. Всичко, което плъзнете в папката Library>Scripts, автоматично ще се появи в менюто Scripts.

От друга страна, ако започнете да добавяте много свои собствени елементи към менюто Script, ще бъде по-удобно да премахнете пробите от Apple от него. Няма проблем. Отворете AppleScript Utility и премахнете отметката от Show Computer scripts.

Работа с предварително изградени AppleScripts

Докато работите в менюто със скриптове, скоро ще разберете, че имате десетки безплатни вградени скриптове на вашия Mac. Страхотното е, че можете да разберете как работят и дори да ги модифицирате, докато постепенно се научавате как да пишете свои собствени AppleScript скриптове. Можете дори да копирате и използвате цели части от скриптове на Apple във вашите собствени скриптове.

Първо, разбира се, трябва да отворите скрипта. Най-лесният начин да направите това е да отворите менюто със скриптове, да изберете желаната категория и да щракнете върху името на желания скрипт с бутон Option.

Можете да започнете да изучавате AppleScript, като гледате прост скрипт. Отворете например скрипта за нов прозорец на приложението (в категорията Навигационни скриптове), като щракнете върху името му, докато натискате Ключ за опции. В резултат редакторът на скриптове ще отвори файла в нов прозорец (фиг. 7.18).

Ето как работи този скрипт:

Кажете на приложението "Finder" казва на Mac OS X коя програма трябва да изпълни следните команди.

Активирането извежда Finder на преден план - сякаш сте щракнали върху иконата му в Dock.

Отворете папката „Приложения“ на стартовия диск инструктира Finder да отвори нов прозорец, показващ папката Applications на основния твърд диск.

End tell казва на Finder да си върши работата и да игнорира по-нататъшни команди от вашия скрипт.

За да тествате скрипта, щракнете върху бутона Run или натиснете -R.

съветМожете да редактирате този скрипт, за да отговаря по-добре на вашите нужди. Опитайте например да замените „Приложения“ с „Потребители“, така че скриптът да отваря папката „Потребители“.

Създайте свой собствен AppleScript

Mac OS X идва с десетки програми – има само няколко от тях! Добре, нещо липсва - метроном, например. Как ще свирите на пиано в постоянен ритъм, без да чувате ритмичните щракания, които издава вашия Mac? Разбира се, в краен случай метрономът на GarageBand ще помогне, но това е стрелба с оръдие по врабчетата.

Вместо това можете да използвате AppleScript. отворен нов документв редактора на скриптове (Файл (Файл)> Нов (Нов) или -N) и въведете следното:

диалогов прозорец за показване "Добре дошли в AppleScript Metronome"

задайте bpm на текста, върнат от (диалогов прозорец за показване ¬

„Колко удара в минута?“ отговор по подразбиране 60)

задайте pauseBetweenBeeps на (60/bpm)

забавяне пауза между звукови сигнали

ЗабележкаНе е необходимо да отпечатвате знака ¬. Ето как програмистите казват: "Това трябва да е на един ред, но ширината на страницата не е достатъчна."

Когато стартирате този скрипт, се появява диалогов прозорец, който ви пита колко удара в минута трябва да отчита метрономът. Числото, което въвеждате (например 120), се съхранява във временна променлива за съхранение в скрипта, наречена bpm.

След това скриптът изчислява паузата между звуковите сигнали и записва тази част от секундата в променливата pauseBetweenBeeps. Ако сте казали на скрипта да публикува звуков сигнал, например 120 пъти в минута, тогава pauseBetweenBeeps ще бъде зададено на 0,5, защото трябва да има пауза от половин секунда между пробите.

Накрая скриптът създава безкраен цикъл: звуков сигнал, пауза за определената продължителност и след това повторение.

Щракнете върху бутона Run, за да тествате скрипта си, и когато ви е писнало от звуците, щракнете върху бутона Stop.

ЛЮБИМИТЕ МИ ТЕХНИКИ
Прикачени файлове към работния плот с едно кликване
Ето един малък трик на Automator, който може да спаси живота на всеки, който трябва често да изпраща документи. електронна поща. (Той моделира много удобно изпрати командаДо (Изпращане), достъпно в менюто за бърз достъп на машини с Windows.)

Създайте процес в Automator само с две стъпки: Вземете избрани елементи от Finder (под категорията Finder) и Ново имейл съобщение (под категорията Mail).

Ако винаги изпращате файлове до една и съща дестинация - вашият шеф, например - можете дори да зададете предварително адреса в лентата на процеса на Automator. Ако темата и текстът на съобщението се повтарят всеки път, те също могат да бъдат зададени предварително.

Сега изберете File (File)> Save As Plug-in (Save as a module). Наименувайте процеса по имейл или както искате.

От този момент нататък можете да изпратите документа от Finder, като щракнете върху него с Control и изберете Automator>Email This от появилото се меню.

Победа! Mac OS X стартира Mail и създава изходящо съобщение, към което вече има прикачен файл.

Безплатен съвет: ако вмъкнете друго действие Създаване на архив (от категорията Finder) между тези две действия, вашата команда от менюто също ще компресира файла (или папката) в .zip файл, преди да го изпрати по пощата!

съветЩе бъде още по-готино, ако го сложите системни настройкиСистемни предпочитания>Универсален достъп>Слух>Квадратче за отметка Мигане на екрана, когато се появи предупредителен звук. Сега, когато вашият скрипт работи, екранът ще мига заедно със звука. Ако записвате музика, заглушете вашия Mac: ще имате визуален метроном, но няма да чувате звук.

Сравнение на AppleScript и Automator

AppleScript може да се използва по стотици начини - автоматизиране на процеси, твърде сложни за Automator, управление на програми, които Automator не може да види, и програмиране на неща като циклични команди, които Automator не може да направи.

Ако третирате AppleScript само като заместител на Automator, вие пропускате много мощност. Всъщност AppleScript предоставя функции, които Automator вероятно няма да има след 10 години: това е много по-усъвършенстван инструмент.

Automator е добър за прости задачи. Ако имате нужда от AppleScript за автоматизиране на вашия Mac, не се отчайвайте. Използвате наистина мощен инструмент. (Можете дори да ги комбинирате и да вградите AppleScripts в процеси на Automator с действието Run AppleScript.)

Успехи в автоматизацията!

  • AppleScript Apple. AppleScript AppleScript. , - .

    AppleScript.

    0 . . . . . . . . . . . . . . . . . . . . . 6

    1 . . . . . . . . . 7

    2 . . . . . . 10

    3(I). . . . . . . . 13

    4 . . . . . . . . . . . . . . . . . . . . . 15

    5 . . . . . . . . . . . . . . . . . . . . . 17

    6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    8(II). . . . . . . тридесет

    9 ? ! . . . . . . . . 32

    10 . . . . . . . . . . . . . . . . . . 34

    11 . . . . . . . . . . . . . . 40

    13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

    14 . . . . . . . . . . . . . . . . . . . 53

    16 . . . . . . . . . . . . . . . . 59

    17 . . . . . . . . 60 . . . . . . . . 60

    AppleScript Apple. , AppleScript:

    AppleScript, AppleScript. , -, .

    AppleScript, . - AppleScript ( Адобе Фотошоп, QuarkXPress, Adobe InDesign). File Maker Pro. , GraphicConverter, BBEdit, Microsoft Word AppleScript(). , AppleScript. , . . , AppleScript, AppleScript. , - AppleScript.

    . (. петнадесет). - AppleScript. , .

    AppleScript, AppleScript:

    , ; AppleScript , .. , AppleScript; (Mac OSX)

    AppleScript; AppleScript ; AppleScript (Mac OS X).

    AppleScript. , Java, . AppleScript, 10-, -. .

    5 AppleScript , . - AppleScript Studio, (инструменти за програмисти XCode).

    JavaScript, .

    () . , . , . , .

    . , : . - . , . : .

    AppleScript, . . Редактор на скриптове (.2),​.

    Авторско право (c) 2003 от Берт Алтенбург

    : Берт Алтенбург, - .

    един.. , - . , AppleScript. AppleScript.

    2. , компютър, . - , -. Монитор на процесора (Помощни програми, Приложения), - . (DC разпределени изчисления), [имейл защитен], . DC-, -. DC-. -- , DC- . , . ? DC- - . (), - . , - , . DC-- : , . , DC- :

    www.aspenleaf.com/distributed/distrib-projects.html

    3. . , . () , - . - , . - , . - , :

    http://www.macinstruct.com/tutorials/crash/index.html

    AppleScript Mac OS. , - . , .

    , -. , (изявление), . , .

    AppleScript, . , един .

    AppleScript:

    кажете "Това е изречено изречение."

    Фред, Триноиди, Виолончели, Зарвокс, Виктория.

    кажете "Това е изречено изречение." използвайки "Zarvox"

    : AppleScript. , . , Виктория Зарвокс .

    AppleScript. - , - . : . AppleScript - , . AppleScript, . (с възможност за скрипт). , AppleScript (Mac OS X), .

    търсач. , Търсач . , . Търсач , - , . -, Кошче, Търсач.

    8, AppleScript.

    Адобе Фотошоп. фотошоп. , Търсач.

    AppleScript, .

    Кажете, AppleScript (Mac OS X), Finder. AppleScript (Mac OS X) , - end tell . Търсач на AppleScript Finder, . , :

    кажете на приложението "xyz"

    (кажи блок). xyz xyz. , AppleScript , - , . , . (, ("". : , AppleScript . . .)

    търсач. , Търсач. търсач, търсач.

    кажете на приложението "Finder" изпразнете кошчето отворете стартовия диск край кажете

    търсач. Търсач, - , . .

    Finder, AppleScript (Mac OS X) .

    9tell приложение "Finder" изпразнете кошчето отворете стартовия диск край tellbeep

    търсач. звуков сигнал AppleScript. , .

    Звуков сигнал (AppleScript (Mac OS X)) .

    кажете на приложението "Finder" изпразнете кошчето звуков сигнал отворете стартовия диск край кажете

    Звуков сигнал на Finder, AppleScript (Mac OS X) . , . , -, Finder , звуков сигнал, Finder .

    AppleScript (Mac OS X) . - , Finder, . ().

    кажете на приложението "Finder" изпразнете кошчето звуков сигнал край кажете отворете стартовия диск

    AppleScript (Mac OS X) , . () - , .

    кажи на приложението "Finder" изпразни кошчето кажи отвори стартовия диск кажи "Изпразних кошчето и отворих стартовия диск завие" използвате "Виктория"

    AppleScript (Mac OS X), Finder. , .

    редактор на скриптове,. Редактор на скриптове AppleScript, приложения. , . .

    компилирам. , AppleScript , AppleScript . Yo Finder! Изхвърли ми боклука (Finder!) Хей Finder! Почистете кошчето (Finder,) Finder. (компилация) AppleScript (Mac OS X) : - . , . , - . редактор на скриптове.

    AppleScript (Mac OS X) .

    кажете "Уча AppleScript по лесния начин!" използвайки "Zarvox"

    бягай,. редактор на скриптове, !

    Въведете Въведете - интервал()(). Връщане (Shift) -. връщане.

    Компилирайте. - Бягай,.

    Бягай, Command-R. : , -

    , (компилиран скрипт) (приложение).

    : , - AppleScript,

    Изпълнение на редактора на скриптове.

    : , AppleScript ,

    редактор на скриптове. , - , (Системни предпочитания). , . - , Редактор на скриптове, Отваряне на файл.

    : Запазване, - (само за изпълнение). , - .

    кажете на приложението "Finder" изпразнете кошчето край кажете

    редактор на скриптове.

    Приложение , :

    Приложение за редактор на скриптове. .xyz. - (-), pqr. -, AppleScript. , AppleScript pqr , кажи .

    Редактор на скриптове , - . , контрол . :

    1) Редактор на контролен скрипт. (.), Кажете Блокове. , Кажете на "Finder".

    2) Finder изпразни кошчето , (), 1. . - .

    2 + 6 = ...... = 3 * 4

    2+6=xy=3*4

    AppleScript. (променливи) , . - (идентификатори), . - AppleScript, зададен.

    задайте x на 25, задайте y на 4321.234

    AppleScript, . : (- , (бъгове)). , х. , PictureWidth .

    задайте PictureWidth на 8

    , (, -,). , AppleScript, - . , (осем) .

    AppleScript - . , задайте, кажете, на, бипкане , - AppleScript. , PictureWidth, . -, .

    AppleScript, . , .

    задайте pictureWidth на 8 задайте pictureHeight на 6 задайте pictureSurfaceArea на pictureWidth * pictureHeight

    , (оператори), - .

    задайте cubeEdgeLength на 10.0 задайте cubeVolume на cubeEdgeLength ^3

    редактор на скриптове,. , . (резултат) . , 10.0. , 1000.0. , cubeEdgeLength ^ 3 , .

    : . - . (цели числа) , - , (.13)

Това е език за програмиране, технология, която принадлежи на компанията, най-често се използва за автоматизиране на работни процеси и прави възможна комуникацияпрограми помежду си. Как 🙂 .

Няма да отварям поредица от статии по темата: „Applescript for dummies. Стъпка по стъпка ”по една проста причина - в мрежата има много материали по тази тема. И за да не пренаписвам буквара по свой начин и да не преоткривам колелото, ще посоча само няколко източника, които ми се сториха най-подходящи. Според него самият аз ще бъда просветлен.

Почти всеки автор пише, че скриптовият език е толкова прост, че всеки потребител с поне малко познания по традиционен английски може да пише на него. И не е необходимо да познавате всички аспекти на обектно-ориентираното програмиране. Има известна истина в това, защото в сценария

кажете на приложението "Finder"

показва диалогов прозорец "Здравейте лунатици!"

трудно е да не разберем какво и от коя програма се изисква. Но не съм съвсем съгласен за ООП. Ако пишете такива безполезни неща като звуков сигнал или казвате „Кой е мъжът?" , тогава да, може да не знаете какво е цикъл и клас и все още е далеч от ООП с това. Но ако искате да научите как да пишете програми или скриптове, за да улесните ежедневните задачи за себе си или за някаква база данни, тогава по-добре знаете какво като "Наследяване" и "Енкапсулиране".

Откъде да започна?

Всичко е просто и на една ръка разстояние. Стартирайте редактора на скриптове и първо отидете на помощта. Ако използвате рускоезичната версия, не би трябвало да има никакви затруднения.

За кого книга?

Ако стандартното ръководство не е достатъчно или е написано по такъв начин, че всичко не ви е ясно веднага, можете да се обърнете към книги (електронни или печатни - вие решавате). Често се споменава книгата "Ръководство за език на AppleScript". Оказва се, че има връзка към него в помощта на редактора на скриптове.

Невъзможно е да не вземем предвид други ресурси, които самата компания разработчик ни предлага. Има книга за начинаещи "AppleScript 1-2-3" или можете да я купите със същото име.

По-голямото е по-добро

Защо не помислите за онлайн ресурси? В крайна сметка тук можете да намерите най-свежото, а читателите реагират на обратна връзка по-често и по-бързо. Ще търсим литература на достъпен език.

В допълнение към различни рецензии, можете да намерите "" в Интернет. Бих казал, че са за тези, които се интересуват от applescript. Книгата е за начинаещи, написана е просто, има малко страници, но има много примери. Точно това, което е необходимо. Там можете също да изтеглите книга, наречена "".

Руските ръководства са добри, но без основни познания по английски, ще бъде меко казано трудно да научите скриптовия език.

От статиите бих обърнал внимание на тази. Хареса ми, защото описва някои от основните принципи на самия скриптов език, "кратко и ясно".

Не забравяйте и за различни форуми, където потребителите обменят мнения, опит и готови сценарии. Аз лично отбелязвам този като отметка.

Преди да започнете да търсите и изтегляте материали, препоръчвам ви да вземете решение за целта. За общо развитие можете да се запознаете с някои източници. За да напишете наистина полезни скриптове, ще трябва да отделите няколко дни/седмици/месеци (в зависимост от вашите способности и свободно време). Много е интересно и пристрастяващо.

Сега не мога да преценя шансовете на човек да си намери работа като програмист или тестер на applescript. Най-вероятно не много голям. Но ако чувстваш, че това е твое - давай. Ако виждате целта и не виждате бариери, няма значение кой има нужда от нея (поне вие). Истинският талант винаги ще бъде оценен. И имате шанс да правите това, което обичате.