AppleScript

Из Википедии, бесплатной энциклопедии

AppleScript
Изображение логотипа
Класс языка Сценарный язык
Появился в 1993; 31 год назад (1993)
Разработчик Apple Inc.
Расширение файлов .scpt, .scptd или .applescript
Выпуск 2.7 (16 октября 2014; 9 лет назад (2014-10-16)[1])
Система типов Слабая, динамическая
Испытал влияние HyperCard
Лицензия Проприетарное программное обеспечение (часть доступна под Apple Public Source License)
Сайт developer.apple.com/libr…
ОС System 7, Mac OS 8, Mac OS 9 и macOS

AppleScript — язык сценариев, созданный Apple и встроенный в macOS, используемой на компьютерах корпорации начиная с System 7.

Язык AppleScript состоит из команд, которые могут быть использованы для управления операционной системой, обменом данными между приложениями, а также для программ автоматизации. AppleScript может выполнять простейшие вычисления и сложную обработку текста, также является расширяемым, что позволяет использовать дополнения для добавления новых функций к языку. AppleScript особенно эффективен для выполнения повторяющихся или комплексных задач. Им можно быстро связать несколько приложений в один автоматизированный комплекс. Однако в основном AppleScript полагается на функциональность приложений и побочных процессов для обработки сложных задач.

AppleScript имеет некоторые элементы объектно-ориентированного программирования, в частности, при программировании объектов сценария и синтаксиса «естественного языка», но не так строго соответствует той или иной категории.

Инструменты разработки[править | править код]

Редакторы сценариев[править | править код]

Редакторы сценариев обеспечивают единую среду для программирования AppleScripts и предоставляют инструменты для их составления, проверки, компиляции, запуска и отладки. Они также обеспечивают механизмы просмотра словарей AppleScript из сценарных приложений, сохранение сценариев в различных форматах (скомпилированные файлы сценариев, пакеты прикладных программ, связки сценариев и текстовые файлы) и, как правило, обеспечивают такие функции, как подсветка синтаксиса и вставка заранее написанных фрагментов кода.

AppleScript Editor[править | править код]

Название используется в версиях macOS, предшествующих 10.6 Snow Leopard, а также в OS X Yosemite. Редактор для AppleScript, который идет в комплекте с macOS. Сценарии пишутся в окне, где они могут быть скомпилированы и воспроизведены. Также окна содержат различные панели, в которых содержатся регистрируемые данные, результаты выполнения, а также другая информация, требуемая для отладки. Доступ к скриптовым словарям и предварительно составленным фрагментам кода доступны через меню приложения. AppleScript Editor в OS X Yosemite имеет возможность написания кода AppleScript и JavaScript.

Xcode (Apple)[править | править код]

Набор инструментов для разработки приложений с возможностью редактирования AppleScripts или создания полноценных приложений, написанных с помощью AppleScript.

Smile и SmileLab (Satimage Software)[править | править код]

Стороннее бесплатное/коммерческое программное обеспечение IDE для AppleScript, которое, в свою очередь, полностью написано на AppleScript. Smile является бесплатным ПО в первую очередь для развития AppleScript. SmileLab предлагает коммерческое программное обеспечение с обширными дополнениями для численного анализа, построения графиков, автоматизации машин и веб-производства. Smile и SmileLab использует ассортимент различных окон — для запуска и сохранения написанных скриптов, терминал для построчного тестирования кода (англ. line-by-line), окно юникода для работы с текстом и XML. Пользователи могут создавать сложные интерфейсы, называемые диалогами, для ситуаций, когда встроенных диалогов в AppleScript недостаточно.

Script Debugger (Late Night Software)[править | править код]

Сторонний коммерческий IDE для AppleScript. Script Debugger является более продвинутой средой разработки AppleScript, что позволяет выполнять отладку сценариев с помощью степпинга, точек останова, отслеживания переменных и т. д. Script Debugger также содержит расширенный словарь, который позволяет пользователю видеть словарь в режиме реального времени. Не просто перечисление того, что охватывает словарь, а возможность открыть документ, например в Pages, и посмотреть, как термины в словаре применимы к этому документу, что облегчает использование частей словаря. Script Debugger не предназначен для создания скриптов с графическим интерфейсом, кроме основных диалоговых окон. Редактор больше ориентирован на написание и отладку сценариев.

ASObjC Explorer 4 Архивная копия от 21 июня 2017 на Wayback Machine (Shane Stanley)[править | править код]

Сторонний коммерческий IDE для AppleScript, в особенности для AppleScriptObjC. Это единственный инструмент для AppleScriptObjC Cocoa-scripting (доступно в OS X Yosemite). Главной особенностью является Cocoa-object, ведение журнала событий (лога), отладки и завершения кода. Пользователи могут читать события и объекты Cocoa, как и другие сценарные приложения. Этот инструмент сделан для библиотек AppleScript (доступных в OS X Mavericks). Библиотеки AppleScript стремятся к многоразовому использованию компонентов AppleScript и поддерживают встроенный словарь AppleScript (SDEF, Standard Data Exchange Format). ASObjC Explorer 4 может выступать в качестве внешнего редактора сценариев в Xcode.

FaceSpan (Late Night Software)[править | править код]

Сторонний коммерческий IDE для создания приложений на AppleScript с графическими интерфейсами (GUI). Развитие FaceSpan было приостановлено.

Запуск сценариев[править | править код]

AppleScripts может быть запущена из редактора сценариев, но, как правило, удобнее запускать скрипты напрямую, без открытия редактора. Есть несколько вариантов так называемых лаунчеров.

Script Menu[править | править код]

Система обеспечивает доступ к AppleScripts из строки меню macOS, независимо от того, какое приложение запущено. Выбор сценария в меню сценариев запускает его. В версиях 10.6.x меню скриптов активируется из предпочтений AppleScript Editor; в предыдущих версиях macOS, он мог быть активирован из приложения AppleScript Utility.

Большинство приложений Apple, некоторые приложения сторонних разработчиков, а также некоторые дополнения предоставляют свои собственные меню сценариев. Они могут быть активированы различными способами, но все функции аналогичны.

Клавиши быстрого доступа[править | править код]

Клавиши быстрого доступа могут быть назначены в меню сценария, с помощью раздела Системные настройки — Настройка клавиатуры и мышки. Также доступны различные сторонние утилиты — QuicKeys, Spark, Quicksilver, Alfred, TextExpander.

Действия в папке[править | править код]

Используя папку действий AppleScript, возможно запустить скрипты, когда происходят определенные изменения в папках (например, добавление или удаление файлов). Действия папки могут быть назначены, если нажать на папку и выбрать Folder Actions Setup… из контекстного меню; расположение этой команды в версиях 10.6.x немного отличается от ранних версий. Такое же действие доступно при помощи сторонних утилит, таких как Hazel.

Командная строка UNIX[править | править код]

AppleScripts возможно запустить из командной строки UNIX или из запланированных на запуск программ, с помощью инструмента osascript. Инструмент osascript может запускать скомпилированные скрипты (файлы с расширением .scpt) и текстовые файлы (.applescript — эти файлы скомпилированы с помощью данного инструмента). Приложения сценариев можно запускать с помощью открытой команды UNIX.

Связано с созданием сценариев[править | править код]

Automator[править | править код]

Automator является графической модульной средой для редактирования, в которой рабочие процессы строятся из действий. Приложение предназначено для использования многих функций AppleScript без необходимости знания программирования. Automator имеет функции, специально разработанные для создания и запуска AppleScripts в графическом интерфейсе по принципу drag-and-drop.

Основные приложения системы[править | править код]

Это фоновые приложения, упакованные в macOS. Они используются для доступа к функциям AppleScript, которые обычно не присутствовали бы в скриптах. По состоянию версии 10.6.3 они включают в себя приложение для работы со сценариями VoiceOver (звуковое воспроизведение и использование брайлевского дисплея для чтения пакета), System Events (англ. системные события) (контроль без сценарных приложений и доступ к определенным функциям системы, так же к основным операциям с файлами), Printer Setup Utility (англ. утилита настройки принтера) (утилита для обработки заданий на печать), Image Events (ядро для работы с изображениями), HelpViewer (англ. средство просмотра справки) (показ справки), Database Events (минимальный интерфейс, предназначенный для работы с базами данных SQLite3) и AppleScript Utility, а также несколько полезных приложений, используемых в системе.

AppleScriptObjC[править | править код]

Часть пакета Xcode, среда разработки Cocoa, которая доступна на установочном компакт-диске macOS, но не устанавливается по умолчанию. AppleScriptObjC позволяет выполнять вызов команд AppleScripts Cocoa напрямую.

AppleScript Studio[править | править код]

Часть пакета Xcode в версиях 10.4 и 10.5, более не рекомендуется. Фреймворк для работы интерфейса Cocoa в приложениях AppleScript.

Scripting Additions (OSAX)[править | править код]

Дополнения (плагины) для работы с AppleScript, разработанные компанией Apple и третьими сторонами. Они предназначены для расширения встроенной команды Set, расширяя возможности рабочей группы и делая ее меньше зависимой от функциональных возможностей, предоставляемых приложениями. Например, дополнение Standard Addition.osax от Apple добавляет набор команд и классов, которые не входят в основные функции рабочей группы — без этого osax, у AppleScript не было бы возможности отображения диалоговых окон, использования навигационных услуг или выполнения каких-либо действий, прямо не предусмотренных приложением.

Библиотеки AppleScript[править | править код]

Многоразовый модуль для AppleScript, написанный на самом же AppleScript (доступен в OS X Mavericks). Это пакет скриптов с одним или несколькими скриптами. Также некоторые фреймворки написаны на Objective-C. Все это своего рода дополнительные скрипты, написанные для расширения возможностей AppleScript.

Литература[править | править код]

  • Mark Conway Munro. AppleScript. — Developer Reference (Том 23). — John Wiley & Sons, 2010. — 624 с. — ISBN 9780470924730.
  • Hamish Sanderson, Hanaan Rosenthal. Learn AppleScript: The Comprehensive Guide to Scripting and Automation on Mac OS X. — 3. — Apress, 2010. — 1104 с. — ISBN 1430223618. — ISBN 9781430223610.
  • Sal Soghoian, Bill Cheeseman. Apple Training Series: AppleScript 1-2-3. — Peachpit Press, 2009. — 896 с. — ISBN 9780321648792.
  • Jerry Lee Jr. Ford. AppleScript Programming for the Absolute Beginner. — Cengage Learning, 2008. — 368 с. — ISBN 1598636200. — ISBN 9781598636208.
  • Matt Neuburg. AppleScript: The Definitive Guide. — O'Reilly Media, 2006. — 565 с. — ISBN 0596102119. — ISBN 9780596102111.
  • Adam Goldstein. AppleScript: The Missing Manual: The Missing Manual. — O'Reilly Media, 2005. — 352 с. — ISBN 0596553102. — ISBN 9780596553104.
  • Tom Trinko. AppleScript For Dummies. — Wiley, 1996. — 396 с. — ISBN 1568849753. — ISBN 9781568849751.
  • William R. Cook. AppleScript (англ.) // University of Texas at Austin. — 2006. — 29 September.

Примечания[править | править код]

  1. OS X 10.10 Yosemite release date. Дата обращения: 16 ноября 2014. Архивировано 13 июля 2019 года.

Ссылки[править | править код]