~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ EAD0FEC74A17B64A69F4ABE8977D6CA4__1706060880 ✰
Заголовок документа оригинал.:
✰ AppleScript - Wikipedia ✰
Заголовок документа перевод.:
✰ AppleScript — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/AppleScript ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/ea/a4/ead0fec74a17b64a69f4abe8977d6ca4.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/ea/a4/ead0fec74a17b64a69f4abe8977d6ca4__translat.html ✰
Дата и время сохранения документа:
✰ 18.06.2024 00:43:46 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 24 January 2024, at 04:48 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

AppleScript — Википедия Jump to content

AppleScript

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

AppleScript
Парадигма Программирование на естественном языке , Сценарии
Разработчик Apple Инк.
Впервые появился 1993 год ; 31 год назад ( 1993 ) [1]
Стабильная версия
2.8 [2] / 16 октября 2014 г .; 9 лет назад ( 16.10.2014 ) [3]
Дисциплина набора текста Слабый , динамичный
ТЫ Система 7 , Mac OS 8 , Mac OS 9 , macOS
Лицензия Собственная собственность (детали доступны по лицензии APSL )
Расширения имен файлов .scpt, .scptd, .applescript
Веб-сайт разработчик .яблоко /библиотека /архив /документация /AppleScript /Концептуальный /AppleScriptLangGuide
Под влиянием
Естественный язык , HyperTalk

AppleScript — это язык сценариев , созданный Apple Inc., который упрощает автоматическое управление приложениями Mac с поддержкой сценариев . Впервые представленный в System 7 , в настоящее время он включен во все версии macOS как часть пакета инструментов автоматизации системы. [4] [5] Термин «AppleScript» может относиться к самому языку, к отдельному сценарию, написанному на этом языке, или, неофициально, к открытой архитектуре сценариев macOS , лежащей в основе языка. [4] [5]

Обзор [ править ]

AppleScript — это, прежде всего, язык сценариев, разработанный Apple для осуществления взаимодействия между приложениями (IAC) с использованием событий Apple . [4] [5] AppleScript связан с событиями Apple, но отличается от них. События Apple предназначены для обмена данными между другими приложениями и управления ими с целью автоматизации повторяющихся задач.

AppleScript имеет некоторые собственные возможности обработки, помимо отправки и получения событий Apple в приложения. AppleScript может выполнять базовые вычисления и обработку текста, а также является расширяемым, что позволяет использовать дополнения к сценариям , добавляющие в язык новые функции. Однако в основном AppleScript полагается на функциональность приложений и процессов для решения сложных задач. Как структурированный командный язык AppleScript можно сравнить с оболочками Unix , Microsoft Windows Script Host или IBM REXX , но он отличается от всех трех. Важным для его функциональности является тот факт, что приложения Macintosh публикуют «словари» адресуемых объектов и операций.

AppleScript имеет в своем синтаксисе некоторые элементы процедурного программирования , объектно-ориентированного программирования (особенно при построении объектов сценария) и тенденций программирования на естественном языке , но не соответствует строго ни одной из этих парадигм программирования . [5] : xxvi

История [ править ]

В конце 1980-х годов Apple рассматривала возможность использования HyperCard компании HyperTalk языка сценариев в качестве стандартного языка для разработки конечными пользователями всей компании и в своей классической операционной системе Mac OS, а также для межпроцессного взаимодействия между продуктами Apple и сторонних производителей. [6] HyperTalk может использоваться новичками для программирования стека HyperCard. Инженеры Apple осознали, что аналогичный, но более объектно-ориентированный язык сценариев можно разработать для использования с любым приложением , и проект AppleScript родился как побочный результат исследовательской работы по модернизации Macintosh в целом и, наконец, стал его частью. Системы 7 . [1]

AppleScript был выпущен в октябре 1993 года как часть Системы 7.1.1 (Система 7 Pro, первое крупное обновление Системы 7). [1] QuarkXPress (версия 3.2) был одним из первых крупных программных приложений, поддерживающих AppleScript. Это, в свою очередь, привело к тому, что AppleScript получил широкое распространение в мире издательского дела и допечатной подготовки, часто связывая сложные рабочие процессы. Это было ключевым фактором в сохранении доминирующего положения Macintosh в издательской и допечатной подготовке даже после того, как QuarkXpress и другие издательские приложения были перенесены на Microsoft Windows.

После некоторой неопределенности относительно будущего AppleScript в ОС следующего поколения Apple переход на Mac OS X (около 2002 г.) и ее инфраструктуру Cocoa значительно повысил полезность и гибкость AppleScript. Приложения Cocoa позволяют разработчикам приложений реализовать базовую возможность сценариев для своих приложений с минимальными усилиями, расширяя количество приложений, которые можно напрямую использовать в сценариях. В то же время переход к основам Unix и возможности AppleScript напрямую запускать команды Unix с do shell script команда, [7] позволил AppleScripts гораздо лучше контролировать саму операционную систему. [5] : 863  AppleScript Studio , выпущенная вместе с Mac OS X 10.2 как часть Xcode , а позже платформа AppleScriptObjC , выпущенная в Mac OS X 10.6 , позволяла пользователям создавать приложения Cocoa с использованием AppleScript. [5] : 969 

В статье 2006 года Macworld включил AppleScript в список 30 наиболее значимых продуктов Apple на сегодняшний день, поместив его на 17-е место. [8]

В статье для Macworld в 2013 году опытный разработчик программного обеспечения для Mac и комментатор Джон Грубер завершил свои размышления о «маловероятной живучести AppleScript», отметив: «Теоретически AppleScript мог бы быть намного лучше; однако на практике это лучшее, что у нас есть». это работает. Это иллюстрирует преимущества Mac перед iOS для мастеров и опытных пользователей». [9]

В октябре 2016 года давний менеджер по продукту AppleScript и евангелист по автоматизации Сал Согоян покинул Apple, когда его должность была уволена «по деловым причинам». [10] Ветераны сообщества Mac, такие как Джон Грубер и Энди Игнатко, в целом отреагировали с беспокойством, поставив под сомнение приверженность Apple сообществу разработчиков и профессиональных пользователей. [11] Старший вице-президент Apple по разработке программного обеспечения Крейг Федериги ответил в электронном письме, заявив, что «мы намерены продолжать поддержку замечательных технологий автоматизации в macOS!», хотя Джефф Гамет из The Mac Observer высказал мнение, что это мало что сделало, чтобы развеять его сомнения. о будущем автоматизации Apple в целом и AppleScript в частности. [12] На данный момент AppleScript остается одним из компонентов технологий автоматизации macOS, наряду с Automator , Shortcuts , Services и сценариями оболочки .

Основные понятия [ править ]

AppleScript был разработан для использования в качестве доступного для конечных пользователей языка сценариев, предлагающего пользователям интеллектуальный механизм для управления приложениями, а также для доступа и изменения данных и документов. AppleScript использует события Apple — набор стандартизированных форматов данных, которые операционная система Macintosh использует для отправки информации в приложения, что примерно аналогично отправке запросов XPath через XML-RPC в мире веб-сервисов . [5] : xxvi События Apple позволяют сценарию работать с несколькими приложениями одновременно, передавая данные между ними, что позволяет выполнять сложные задачи без участия человека. [4] Например, AppleScript для создания простой веб-галереи может выполнять следующие действия:

  1. Откройте фотографию в приложении для редактирования фотографий (отправив этому приложению событие Apple Open File ).
  2. Попросите приложение для редактирования фотографий манипулировать изображением (например, уменьшить его разрешение, добавить рамку, добавить ссылку на фотографию).
  3. Сообщите приложению для редактирования фотографий, чтобы оно сохранило измененное изображение в файле в другой папке (отправив этому приложению событие «Сохранить» и/или «Закрыть Apple»).
  4. Отправьте новый путь к файлу (через другое событие Apple) в текстовый редактор или приложение веб-редактора.
  5. Скажите этому приложению-редактору записать ссылку на фотографию в HTML-файл.
  6. Повторите описанные выше действия для всей папки изображений (сотни или даже тысячи фотографий).
  7. Загрузите HTML-файл и папку с отредактированными фотографиями на веб-сайт, отправив события Apple графическому FTP- клиенту, используя встроенные команды AppleScript или отправив события Apple в FTP-утилиты Unix.

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

Элементы приложения, доступные для сценариев, видны в словаре сценариев приложения (распространяется как часть приложения), который можно просмотреть в любом редакторе сценариев . Элементы обычно группируются в комплекты в соответствии со свободными функциональными связями между ними. В любом наборе присутствуют два основных типа элементов: классы и команды.

  • Классы — это объекты, доступные для сценариев — например, приложение для редактирования текста почти наверняка будет иметь классы для окон, документов и текстов — и эти классы будут иметь свойства, которые можно изменить (размер окна, цвет фона документа, размер шрифта текста и т. д.). и может содержать другие классы (окно будет содержать один или несколько документов, документ будет содержать текст, текстовый объект будет содержать абзацы, слова и символы).
  • Команды , напротив, представляют собой инструкции, которые можно передавать объектам, допускающим сценарии. Общий формат блока AppleScript — указать объекту, поддерживающему сценарий, выполнить команду.

Все приложения, поддерживающие сценарии, имеют несколько общих команд и объектов, обычно называемых стандартным набором — команды для открытия, закрытия или сохранения файла, печати чего-либо, выхода, установки данных в переменные, — а также базовый объект приложения , который дает скриптовые свойства самого приложения. Многие приложения имеют множество наборов, способных выполнять любую задачу, которую может выполнить само приложение. В исключительных случаях приложения могут поддерживать плагины, включающие собственные словари сценариев.

AppleScript был разработан с возможностью интуитивного создания сценариев путем записи действий пользователя. Такая возможность записи AppleScript должна быть встроена в приложение — приложение должно поддерживать события Apple и запись AppleScript; [13] поскольку Finder поддерживает запись AppleScript, он может быть полезен для справки. Когда редактор AppleScript (редактор сценариев) открыт и нажата кнопка «Запись», действия пользователя для записываемых приложений преобразуются в эквивалентные команды AppleScript и выводятся в окно редактора сценариев. Полученный сценарий можно сохранить и повторно запустить, чтобы дублировать исходные действия, или изменить, чтобы он был более полезен в целом.

Комментарии [ править ]

Комментарии можно оставлять несколькими способами. Однострочный комментарий может начинаться с двух дефисов ( -- ). В AppleScript 2.0, впервые выпущенном в Mac OS X Leopard , он также может начинаться со знака числа (#). Это позволяет хранить автономный сценарий AppleScript в виде исполняемого текстового файла, начинающегося со строки shebang. #!/usr/bin/osascript Пример:

--Это комментарий в одну строку 
 # Вот и всё!   (в Mac OS X Leopard или более поздней версии) 

Для комментариев, занимающих несколько строк, AppleScript использует круглые скобки со звездочками внутри. Пример:

(* Это 
 многострочный 
 комментарий 
 *) 

Привет, мир! [ редактировать ]

В AppleScript традиционный «Hello, World!» Программа может быть написана во многих различных формах, включая:

отобразить диалог   «Привет, мир!»    -- модальное окно с кнопками "ОК" и "Отмена" 
 -- или 
 отображение предупреждения   "Hello, world!"    – модальное окно с единственной кнопкой «ОК» и значком, представляющим приложение, отображающее предупреждение 
 – или 
 скажите   «Привет, мир!»    -- аудиосообщение, использующее синтезированный компьютерный голос. 

AppleScript имеет несколько вариантов пользовательского интерфейса, включая диалоговые окна, оповещения и список вариантов выбора. (Символ ¬, полученный при вводе ⌥ Option+ return в редакторе сценариев означает продолжение одного оператора на нескольких строках.)

-- Диалог 
 устанавливает   диалогОтвет   для   отображения диалога   «Текст диалога»   ¬ 
	 по умолчанию   ответ   «Текстовый ответ»   ¬ 
	 скрытый   ответ   false   ¬ 
	 кнопки   {  «Пропустить»  ,   «ОК»  ,   «Отмена»  }   ¬ 
	 по умолчанию   кнопка   «ОК»   ¬ 
	 отмены   кнопка   «Пропустить»   ¬ 
	 с   заголовком   «Заголовок диалогового окна»   ¬ 
	 с   значку   примечанием   ¬ 
	 отказ   к   после   15 
-- Выберите из списка 
 set   selectedListItem   для   выбора из списка   {  "A"  ,   "B"  ,   "3"  }   ¬ 
	 с   заголовком   «List Title»   ¬ 
	 с   подсказкой   «Prompt Text»   ¬ 
	 по умолчанию   элементы   «B»   ¬ 
	 «ОК»   кнопки   Имя   «Выглядит» Хороший!"    ¬ 
	 отмены   кнопки   название   «Нет, попробуйте еще раз   ¬ 
	 множественный   выбор   допускается   false   ¬ 
	 разрешен   пустой   выбор   » 
 
-- Оповещение 
 устанавливает   resultAlertReply   для   отображения оповещения   «Текст оповещения»   ¬ 
	 как   предупреждение   ¬ 
	 кнопки   {  «Пропустить»  «   ОК»  ,   «Отмена»  }   ¬ 
	 по умолчанию   кнопка   2   ¬ 
	 отмены   кнопка   1   ¬ 
	 отказ   ,   после   2 

Каждый метод взаимодействия с пользователем может возвращать значения нажатых кнопок, выбранных элементов или введенного текста для дальнейшей обработки. Например:

отобразить предупреждение   «Привет, мир!»    кнопки   {  «Грубо отклонить»  ,   «С радостью принять»  } 
 установить   «Ответ на   »   кнопку   возвращающую результат   ,   , 
 если   ответ   « С   радостью принимаю»,   затем 
	 подать звуковой сигнал   5 
 , иначе 
	 сказать   «Пиффл!» 
  конец   , если 

Метафора естественного языка [ править ]

В то время как события Apple — это способ отправки сообщений в приложения, AppleScript — это особый язык, предназначенный для отправки событий Apple. В целях простоты использования для начинающих язык AppleScript разработан на основе естественного языка метафоры , точно так же, как графический интерфейс пользователя разработан на основе метафоры рабочего стола . Хорошо написанный AppleScript должен быть достаточно понятным, чтобы его мог прочитать и понять любой, и легко редактировать. Язык в значительной степени основан на языке HyperTalk HyperCard, расширенном для обозначения не только мира карт и стопок HyperCard, но теоретически также и любого документа. С этой целью команда AppleScript представила объектную модель AppleEvent (AEOM), которая определяет объекты, которые «знает» любое конкретное приложение.

Сердцем языка AppleScript является использование терминов, которые действуют как существительные и глаголы, которые можно комбинировать. Например, вместо другого глагола для печати страницы, документа или диапазона страниц (например, printPage, printDocument, printRange), AppleScript использует один глагол «печатать», который можно комбинировать с объектом, например страницей, документ или диапазон страниц.

Распечатать   страницу   1 

 Распечатать   документ   2 

 Распечатать   страницы   1   по   5   документа   с   2 

Обычно AEOM определяет ряд объектов, например «документ» или «абзац», и соответствующие действия, например «вырезать» и «закрыть». Система также определяет способы обращения к свойствам объектов, поэтому можно обратиться к «третьему абзацу документа «Добрый день»» или к «цвету последнего слова главного окна». AEOM использует словарь приложения , чтобы связать события Apple с удобочитаемыми терминами, позволяя осуществлять перевод туда и обратно между читаемыми человеком событиями AppleScript и с байт-кодом событиями Apple . Чтобы узнать, какие элементы программы можно использовать для сценариев, можно просмотреть словари поддерживаемых приложений. (В приложениях Xcode и Script Editor это находится в разделе «Файл» → «Открыть словарь» .)

Чтобы указать, какое приложение должно быть целью такого сообщения, AppleScript использует конструкцию «tell»:

сказать   приложению   «Microsoft Word» 
   выйти 
 завершить   сказать 

Альтернативно, сообщение можно выразить в одной строке, используя инфинитив :

сообщить   приложению   «Microsoft Word»   о   выходе 

Для событий в «Core Suite» (активация, открытие, повторное открытие, закрытие, печать и выход) приложение может быть предоставлено как прямой объект для транзитивных команд:

выйти из   приложения   «Microsoft Word» 

Понятие иерархии объектов можно выразить с помощью вложенных блоков:

сказать   приложение   «QuarkXPress» 
   рассказать   документ   1 
     рассказать   страницу   2 
       рассказать   текстовое   поле   1 
         установить   слово   5   в   «Apple» 
       конец   сказать 
     конец   сказать 
   конец   сказать 
 конец   сказать 

Понятие иерархии объектов также может быть выражено с помощью вложенных предложных фраз или серии притяжательных падежей:

пиксель   7   строки   изображения   3   TIFF   «   7   «мое растровое изображение» 
 TIFF   »   мое растровое изображение  пиксель   изображения  строки   3 

которые на другом языке программирования могут быть выражены как последовательные вызовы методов , как в этом псевдокоде :

getTIFF  (  «мое растровое изображение»  ).   получитьстроку  (  3  ).   получитьПиксель  (  7  ); 

AppleScript включает синтаксис для порядкового счета (первый абзац), а также кардинального счета (первый абзац). Аналогичным образом, сами числа могут называться текстовыми или цифровыми: поддерживаются все «пять», «пятый» и «5»; они являются синонимами в AppleScript. Кроме того, слово «the» по закону может использоваться в любом месте сценария для улучшения читаемости: оно не влияет на функциональность сценария.

Примеры скриптов [ править ]

Безопасный калькулятор:

сообщить   приложению   «Finder» 
	 — установить переменные, 
	 установить   the1   в   текст   возвращаемый   (  отобразить диалог   «1-й»,   по умолчанию   ответ   «Номер здесь»   , кнопки   {  «Продолжить»  }   по умолчанию   кнопка   1  ) 
	 установить   the2   в   текст   возвращенный   (  отобразить диалог   «2-й»,   по умолчанию   ответьте   «Число здесь»   кнопки   {  «Продолжить»  }   по умолчанию   кнопка   1  ) 
	 попробуйте 
		 установить   для 1   значение   1   как   целое число 
		 , для параметра   2   значение   2   как   целое число 
	 в   ошибки 
		 диалоговом окне отображения   «Вы можете вводить только числа в калькулятор».    с   заголовком   «ОШИБКА»   кнопки   {  «ОК»  }   по умолчанию   кнопка   1 
		 возврат 
	 конец   попытка 
	
	 -- Добавить? 
	  если   кнопка   возвращается   отобразить   (  диалоговые кнопки   «Добавить?»,   кнопки   {  «Нет»  ,   «Да»  }   по умолчанию   кнопка   2  )   имеет значение   «Да»,   тогда 
		 установите   ответ   на   (  the1   +   the2  ), 
		 отобразите диалоговый   ответ   с   заголовком   «Ответить»   кнопки   {  " ОК"  }   по умолчанию   кнопка   1 
		 произнести   ответ 
	 -- Вычесть? 
	  иначе,   если   кнопка   возвращаемая   ,   (  отображение диалогового окна   «Вычесть?»,   кнопки   {  «Нет»  ,   «Да»  }   по умолчанию   кнопка   2  )   равна   «Да»   , тогда 
		 установите   ответ   на   (  the1   -   the2  ) 
		 отобразить диалоговый   ответ   с   заголовком   «Ответить»   кнопки   {  «ОК»  }   по умолчанию   Кнопка   1 
		 произнесите   «Ответ» 
	 -- Умножить? 
	  иначе,   если   кнопка   возвращаемая   ,   (  отображение диалогового окна   «Умножить?»,   кнопки   {  «Нет»  ,   «Да»  }   по умолчанию   кнопка   2  )   равна   «Да»   , тогда 
		 установите   ответ   на   (  the1   *   the2  ) 
		 отобразить диалоговый   ответ   с   заголовком   «Ответить»   кнопки   {  «ОК»  }   по умолчанию   Кнопка   1 
		 произнесите   «Ответ» 
	 -- Разделить? 
	иначе,   кнопка   возвращается   (   если   кнопки  диалогового окна   «Разделить?»   отображения   {  «Нет»  ,   «Да»  }   по умолчанию   кнопка   2  )   имеет значение   «Да»,   тогда 
		 установите   ответ   на   (  the1   /   the2  ) 
		 отобразить диалоговый   ответ   с   заголовком   «Ответить»   кнопки   {  «ОК»  }   по умолчанию   Кнопка   1 
		 говорит,   а 
	 иначе 
		 задержка   1 
		 говорит:   «Вы не выбрали функцию. Операция отменена». 
	  конец   , если 
	
 конец   , скажи 

Простая с именем пользователя и паролем последовательность диалоговых окон . Здесь имя пользователя — John, а пароль — app123:

сообщите   приложению   «Finder» 
	 установите   passAns   на   «app123» 
	 установите   userAns   на   «John», 
	 возвращаемый   (   текст   если   диалоговое  окно отображения   «Имя пользователя»   по умолчанию   ответ   «»  )   является   userAns,   затем 
		 отобразите диалоговые   «Исправить»   кнопки   {  «Продолжить»  }   по умолчанию   кнопка   1 
		 если   (   возвращаемый текст   ,   отображение  диалогового окна   «Имя пользователя: Джон»   и   возврат   &   «Пароль»,   по умолчанию   ответ   «»   кнопки   {  «Продолжить»  }   по умолчанию   кнопка   1   со   скрытым   ответом  )   — это   passAns   тогда 
			 отобразится диалоговое окно   «Доступ предоставлен»   кнопки   {  «ОК»  }   по умолчанию   кнопка   1 
		 , иначе 
			 отобразить диалоговое окно   «Неверный пароль»   кнопки   {  «ОК»  }   по умолчанию   кнопка   1 
		 завершить   , если 
	 иначе 
		 отобразить диалоговое окно   «Неверное имя пользователя»   кнопки   {  «ОК»  }   по умолчанию   кнопка   1 
	 закончить   , если 
 закончить   сказать 

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

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

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

От Apple [ править ]

Редактор AppleScript (редактор сценариев)
Редактор AppleScript, входящий в состав macOS, называется AppleScript Editor в Mac OS X Snow Leopard (10.6) до OS X Mavericks (10.9) и редактор сценариев во всех более ранних и поздних версиях macOS. Сценарии пишутся в окнах редактирования документов, где их можно скомпилировать и запустить, и эти окна содержат различные панели, на которых записанная информация, результаты выполнения и другая информация доступны для целей отладки. Доступ к словарям сценариев и заранее написанным фрагментам кода доступен через меню приложения. Начиная с OS X Yosemite (10.10), редактор сценариев включает возможность написания как на AppleScript, так и на JavaScript . [14]
Xcode
Набор инструментов для разработки приложений с функциями редактирования AppleScripts или создания полноценных приложений, написанных с помощью AppleScript.

От третьих лиц [ править ]

Отладчик сценариев от Late Night Software
Сторонняя коммерческая среда разработки для AppleScript. Script Debugger — это более продвинутая среда AppleScript, которая позволяет разработчику сценариев отлаживать AppleScript с помощью пошаговых операций , точек останова , входа и выхода из функций/подпрограмм, отслеживания переменных и т. д. Script Debugger также содержит расширенный браузер словаря, который позволяет пользователю видеть словарь в действии в реальных ситуациях. То есть, вместо простого перечисления того, что охватывает словарь, можно, например, открыть документ в Pages и посмотреть, как термины словаря применяются к этому документу, что упрощает определение того, какие части словаря использовать. Script Debugger не предназначен для создания сценариев с графическим интерфейсом, за исключением базовых предупреждений и диалогов, но больше ориентирован на кодирование и отладку сценариев.
Улыбка и SmileLab
Сторонняя бесплатная/коммерческая IDE для AppleScript, полностью написанная на AppleScript. [15] Smile бесплатен и в первую очередь предназначен для разработки на AppleScript. SmileLab — это коммерческое программное обеспечение с обширными дополнениями для численного анализа, построения графиков, автоматизации машин и веб-производства. Smile и SmileLab используют набор различных окон — окна AppleScript для запуска и сохранения полных сценариев, терминалы AppleScript для построчного тестирования кода, окна Unicode для работы с текстом и XML. Пользователи могут создавать сложные интерфейсы, называемые диалогами, для ситуаций, когда встроенных диалогов в AppleScript недостаточно.
ASObjC Explorer 4 от Шейна Стэнли
Сторонняя коммерческая среда разработки для AppleScript, выпуск которой прекращен, особенно для AppleScriptObjC . [16] Основная функция Cocoa - регистрация объектов/событий, отладка и завершение кода. Пользователи могут читать события и объекты Cocoa, как и другие приложения, поддерживающие сценарии. Этот инструмент изначально был создан для библиотек AppleScript (доступен в OS X Mavericks ). Библиотеки AppleScript предназначены для многократного использования компонентов AppleScript и поддерживают встроенный словарь AppleScript (sdef). ASOBjC Explorer 4 также может быть внешним редактором сценариев Xcode.
FaceSpan от Late Night Software
Сторонняя коммерческая среда разработки, выпуск которой прекращен, для создания приложений AppleScript с графическим пользовательским интерфейсом. [17]

Программы запуска скриптов [ править ]

AppleScripts можно запускать из редактора сценариев, но обычно удобнее запускать сценарии напрямую, не открывая приложение-редактор сценариев. Для этого есть несколько вариантов:

Апплеты
AppleScripts можно сохранить из редактора сценариев как приложения (называемые апплетами или каплями, когда они принимают ввод посредством перетаскивания ). [5] : 69  Апплеты можно запускать из Dock , из панели инструментов окон Finder , из Spotlight , из сторонних средств запуска приложений или из любого другого места, где можно запускать приложения.
Действия с папками
Используя действия с папками AppleScript, сценарии можно запускать при определенных изменениях в папках (например, при добавлении или удалении файлов). [18] Действия над папкой можно назначить, щелкнув папку и выбрав « Настройка действий с папкой...» в контекстном меню; Расположение этой команды в Mac OS X 10.6.x немного отличается от более ранних версий. Этого же действия можно добиться с помощью сторонних утилит, таких как Hazel. [19]
Горячие клавиши запуска
Сочетания клавиш можно назначить AppleScripts в меню сценариев с помощью Настройки клавиатуры и мыши» панели настроек « в «Системных настройках» . Кроме того, доступны различные сторонние утилиты — Alfred , [20] Фастскрипты, [21] Клавишный маэстро , [22] Быстрые клавиши, [23] Ртуть , [24] TextExpander [25] — который может запускать AppleScripts по требованию с помощью комбинаций клавиш.
Меню сценариев
Это общесистемное меню обеспечивает доступ к AppleScripts из строки меню macOS, видимой независимо от того, какое приложение запущено. [26] (Кроме того, многие приложения Apple, некоторые сторонние приложения и некоторые надстройки имеют собственные меню сценариев. Их можно активировать по-разному, но все они работают по существу одинаково.) Выбор сценария в меню сценариев. запускает его. Начиная с Mac OS X 10.6.x, общесистемное меню сценариев можно включить в настройках редактора сценариев ; в предыдущих версиях Mac OS X его можно было включить из приложения AppleScript Utility. При первом включении в меню сценариев отображается библиотека по умолчанию довольно общих функциональных AppleScripts, которую также можно открыть в редакторе сценариев и использовать в качестве примеров для изучения AppleScript. Сценарии можно организовать так, чтобы они появлялись в меню только тогда, когда определенные приложения находятся на переднем плане.
Командная строка Unix и запуск
AppleScripts можно запускать из командной строки Unix или из launchd для запланированных задач. [5] : 716  с помощью инструмента командной строки osascript. [27] Инструмент osascript может запускать скомпилированные сценарии (файлы .scpt) и обычные текстовые файлы (файлы .applescript — они компилируются инструментом во время выполнения). Приложения-скрипты можно запускать с помощью команды open Unix.

Ресурсы AppleScript [ править ]

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

Повторно используемые модули AppleScript (доступны начиная с OS X Mavericks ), написанные на AppleScript или AppleScriptObjC и сохраненные в виде файлов сценариев или пакетов в определенных местах. [28] который можно вызвать из других скриптов. При сохранении в виде пакета библиотека может включать файл словаря AppleScript (sdef), [29] таким образом, он функционирует как дополнение к скрипту , но написан на AppleScript или AppleScriptObjC.

AppleScript Studio [ править ]

Платформа для подключения интерфейсов Cocoa к приложениям AppleScript, часть пакета Xcode в Mac OS X 10.4 и 10.5, теперь устарела в пользу AppleScriptObjC. [30] : 438 

AppleScriptObjC [ править ]

Платформа Cocoa для разработки программного обеспечения , также называемая AppleScript/Objective-C или ASOC. [31] часть пакета Xcode начиная с Mac OS X Snow Leopard . [32] AppleScriptObjC позволяет AppleScripts напрямую использовать классы и методы Cocoa. [33] В следующей таблице показана доступность AppleScriptObjC в различных версиях macOS: [34]

Где AppleScriptObjC можно использовать в каждой версии macOS
В Xcode В апплетах В AppleScript
Библиотеки
В редакторе скриптов
10.6 Да
10.7 Да Да
10.8 Да Да
10.9 Да Да Да
10.10 Да Да Да Да

AppleScriptObjC можно использовать во всех последующих версиях Mac OS X.

Автоматизатор [ править ]

Графическая модульная среда редактирования, в которой рабочие процессы строятся из действий . Он предназначен для дублирования многих функций AppleScript без необходимости знаний программирования. В Automator есть действие, специально предназначенное для хранения и запуска AppleScripts для задач, которые слишком сложны для упрощенной платформы Automator. [35]

Базовые системные приложения, поддерживающие сценарии [ править ]

Эти фоновые приложения, входящие в состав macOS, используются для обеспечения AppleScript доступа к функциям, которые обычно не доступны для сценариев. Начиная с Mac OS X 10.6.3, они включают в себя скриптовые приложения для:

  • VoiceOver (пакет программ чтения с экрана для слуха и Брайля с поддержкой сценариев)
  • Системные события (управление приложениями, не поддерживающими сценарии, и доступ к определенным системным функциям и основным операциям с файлами)
  • Утилита настройки принтера (утилита с поддержкой сценариев для обработки заданий печати)
  • События изображений (основные манипуляции с изображениями)
  • HelpViewer (утилита с поддержкой сценариев для отображения справочных экранов)
  • События базы данных (минимальный интерфейс базы данных SQLite3)
  • Утилита AppleScript (для создания сценариев некоторых настроек, связанных с AppleScript)

Дополнения к сценариям (OSAX) [ править ]

Плагины для AppleScript, разработанные Apple или третьими лицами. [36] Они предназначены для расширения встроенного набора команд, расширяя возможности AppleScript и делая его несколько менее зависимым от функциональности, предоставляемой приложениями. macOS включает коллекцию дополнений сценариев, называемых стандартными дополнениями ( StandardAdditions.osax ), которые добавляют набор команд и классов, которые не являются частью основных функций AppleScript, включая диалоговые окна взаимодействия с пользователем, чтение и запись файлов, команды файловой системы, функции даты. и текстовые и математические операции; без этого OSAX AppleScript не смог бы выполнять многие базовые действия, не предоставляемые приложением напрямую.

Основы языка [ править ]

Классы (типы данных) [ править ]

Хотя приложения могут определять специализированные классы (или типы данных), AppleScript также имеет ряд встроенных классов. Эти базовые классы данных напрямую поддерживаются языком и обычно распознаются приложениями, поддерживающими сценарии. Наиболее распространены следующие:

  • Базовые объекты
    • application : объект приложения, используемый в основном как спецификатор для операторов Tell ( tell application "Finder" …).
    • скрипт : объект скрипта. Объекты скриптов — это контейнеры для скриптов. Каждый AppleScript создает объект сценария при запуске, и объекты сценария могут быть созданы внутри AppleScripts.
    • class : метаобъект, определяющий тип других объектов.
    • ссылка : объект, который инкапсулирует неоцененный спецификатор объекта, который может указывать или не указывать на действительный объект. Может быть оценен по требованию путем доступа к его contents свойство.
  • Стандартные объекты данных
    • константа : постоянное значение. Существует ряд констант, определенных в языке, например pi, tab, и linefeed.
    • boolean : логическое значение true/false. На самом деле подкласс это constant.
    • число : редко абстрактный суперкласс используемый integer и real.
    • целое число : целое число . Можно манипулировать с помощью встроенных математических операторов.
    • вещественное : число с плавающей запятой ( действительное ). Можно манипулировать с помощью встроенных математических операторов.
    • дата : дата и время.
    • текст : текст. В версиях AppleScript до 2.0 (Mac OS X 10.4 и ниже) text класс отличался от string и Unicode text, и все трое вели себя несколько иначе; в версии 2.0 (10.5) и более поздних версиях все они являются синонимами, и весь текст обрабатывается в кодировке UTF-16 Юникод »). [37]
  • Контейнеры
    • list : упорядоченный список объектов. Может содержать любой класс, включая другие списки и классы, определенные приложениями.
    • запись : ключевой список объектов. Подобен списку, за исключением того, что он структурирован в виде пар ключ-значение . Доступ по ключам во время выполнения не поддерживается; все ключи должны быть идентификаторами констант времени компиляции.
  • Файловая система
    • псевдоним : ссылка на объект файловой системы (файл или папку). Псевдоним сохранит свою ссылку на объект, если объект будет перемещен или переименован.
    • файл : ссылка на объект файловой системы (файл или папку). Это статическая ссылка, которая может указывать на объект, который в данный момент не существует.
    • Файл POSIX : ссылка на объект файловой системы (файл или папку) в виде обычного текста с использованием Unix ( POSIX обозначения косой черты (/) в стиле ). Не настоящий тип данных, поскольку AppleScript автоматически преобразует файлы POSIX в обычные файлы при каждом их использовании. [38]
  • Разнообразный
    • Цвет RGB : определяет триплет RGB (в 16-битном формате высокого цвета ) для использования в командах и объектах, работающих с цветами.
    • типы единиц : класс, который преобразует стандартные единицы измерения. Например, значение может быть определено как square yards, затем преобразуется в square feet путем приведения типов юнитов (с помощью as оператор).

Языковые структуры [ править ]

Многие процессы AppleScript управляются блоками кода, где блок начинается с команды команды и заканчивается оператором завершения команды . Ниже описаны наиболее важные структуры.

Условные предложения [ править ]

AppleScript предлагает два типа условных операторов.

-- Простое условие, 
 если   x   <   1000   , тогда   присвойте   x   значение   x   +   1 

 -- Составное условие, 
 если   x   больше   3   , то 
      -- команды 
 else 
      -- остальные команды 
 завершаются   , если 

Петли [ править ]

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

Повторять вечно.

повтор 
      — команды, которые необходимо повторить, 
 завершить   повтор 

Повторите заданное количество раз.

повторить   10   раз 
      — команды, которые нужно повторить, 
 закончить   повтор 

Условные циклы. Блок внутри цикла повторения while выполняется до тех пор, пока условие оценивается как истинное. Условие пересчитывается после каждого выполнения блока. идентичен В остальном цикл повторения , но блок выполняется до тех пор, пока условие оценивается как ложное.

установите   x   на   5, 
 повторяйте   , пока   x   >   0 
      установите   x   на   x   -   1 
 , закончите   повторение 

 установите   x   на   5 
 , повторите   , пока   x    0 
      установите   x   на   x   -   1 
 , закончите   повтор 

Цикл с переменной. При запуске цикла переменной присваивается начальное значение. После каждого выполнения блока к переменной добавляется необязательное значение шага. Значение шага по умолчанию равно 1.

-- повторите блок 2000 раз, я получу все значения от 1 до 2000, 
 повторите   с   i   от   1   до   2000 
      -- команды, которые нужно повторить, 
 конец   повтора 

 -- повторите блок 4 раза, я получу значения 100, 75, 50 и 25 
 повторите   с   i   от   100   до   25   на   -  25 
     -- команды, которые нужно повторить, 
 конец   повтора 

Перечислить список. На каждой итерации установите для переменной LoopVariable новый элемент в заданном списке.

установить   общее количество   на   0, 
 повторить   с помощью   LoopVariable   в   {  1  ,   2  ,   3  ,   4  ,   5  } 
	 установить   общее значение   на   общее   +   LoopVariable, 
 завершить   повторение 
Таргетинг на приложения Обработка ошибок
-- Простая форма 
 сообщения   приложению   "Safari"   для   активации 

 -- Составное 
 сообщение   приложению   "MyApp" 
      -- команды для 
 завершения   приложения 
try 
      -- команды, которые будут проверены 
 на   ошибку 
      -- команды с ошибками 
 завершают   попытку 

Одним из важных вариантов этой блочной структуры является форма блоков on - end... , которые используются для определения обработчиков (функционально-подобных подпрограмм). Обработчики начинаются с on functionName() и заканчиваются end functionName и не выполняются как часть обычного потока выполнения скрипта, если только они не вызываются откуда-то из скрипта.

Обработчик функции Блок действий с папками Обработчик запуска
on   myFunction  (  параметры  ...) 
      -- команды подпрограммы 
 завершают   myFunction 
при   добавлении   папки   элементов   в   thisFolder   после   получения   этих элементов 
      — команды, применяемые к папке или элементам, 
 завершают   добавление   папки   элементов   в 
при   запуске 
      — команды 
 завершают   выполнение 

Обработчики также могут быть определены с использованием «to» вместо «on» и могут быть записаны так, чтобы принимать помеченные параметры, не заключенные в круглые скобки.

Обработчик с помеченными параметрами Обработчик, использующий «to» и помеченные параметры
on   rock   round   (   часов 
	 диалог отображения   часы  как   строка  )  end 
 rock   -- 
 вызывается с помощью: 
 the   rockaround   current   date 
чтобы   проверить   ваш   номер   снизу   ,   вверх   , 
	 если   нижний    ваш номер   и   ваш номер    верхний   тогда 
		 отобразите диалоговое окно   «Поздравляем! Вы забили». 
	  end   if 
 end   check 
 помощью: 
 проверить   8   7   с   10   по   --вызывается с 

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

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

Когда сценарий, содержащий «открытый обработчик», сохраняется как апплет, апплет становится каплей. Каплю можно идентифицировать в Finder по ее значку со стрелкой, указывающей, что на значок можно перетаскивать элементы. Капля открыта. обработчик выполняется при перетаскивании файлов или папок на иконку дроплета. Ссылки на элементы, помещенные на иконку дроплета, передаются в скрипт дроплета в качестве параметра открытого обработчика. Дроплет также может быть запущен так же, как и обычный апплет. выполнение обработчика запуска.

Простые сделки
Подпрограмма, которая периодически запускается системой, когда приложение простаивает.
в  режиме простоя 
      --код, который будет выполняться после завершения выполнения сценария. 
   return   60   -- количество секунд для паузы перед повторным выполнением обработчика простоя. 
 Конец  простоя . 

Обработчик простоя может использоваться в апплетах или каплях, сохраненных как постоянно открытые апплеты, и полезен для сценариев, отслеживающих определенные данные или события. По умолчанию длительность простоя составляет 30 секунд. [39] но его можно изменить, включив в конец подпрограммы оператор return x, где x — это количество секунд, в течение которых система должна подождать перед повторным запуском обработчика.

Обработчик выхода
Обработчик, который запускается, когда апплет получает запрос на выход. Это можно использовать для сохранения данных или выполнения других завершающих задач перед выходом.
при   выходе 
      --команды, которые необходимо выполнить перед завершением работы сценария 
   continue   quit   -- требуется для фактического завершения работы сценария 
 end   quit 
Объекты сценария

Объекты сценария могут быть определены явно с использованием синтаксиса:

script   scriptName 
      — команды и обработчики, специфичные для сценария 
 завершения   сценария. 

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

Разная информация [ править ]

  • Переменные не являются строго типизированными и их не нужно объявлять. Переменные могут принимать любой тип данных (включая скрипты и функции). Следующие команды являются примерами создания переменных:
    установить   переменную1   в   1   - создать целочисленную переменную с именем переменная1 
     установить   переменную2   в   "Hello"   - создать текстовую переменную с именем переменная2 
     скопировать   {  17  ,   "doubleday"  }   в   переменную3   - создать переменную списка с именем переменная3 
     установить   {  переменная4  ,   переменная5  }   в   переменную3   -- скопируйте элементы списка переменной3 в отдельные переменные переменная4 и переменная5 
     установите   переменную6   в   скрипт   myScript   -- установите переменную в экземпляр скрипта 
    
  • Объекты скрипта являются полноценными объектами — они могут инкапсулировать методы и данные, а также наследовать данные и поведение от родительского скрипта.
  • Подпрограммы нельзя вызывать непосредственно из блоков сообщений приложения. Для этого используйте ключевые слова «мой» или «мои».
сообщить   приложению   "Finder" 
     установить   x   для   моего   myHandler  () 
     -- или 
     установить   x   для   myHandler  ()   для   меня 
 end   сказать 

 на   myHandler  () 
     --commands 
 end   myHandler 

Использование той же техники для написания команд добавления в сценарии может уменьшить количество ошибок и повысить производительность.

сообщить   приложению   «Finder» 
	 установить   AnyNumber   для   моего   (  случайное число   от   5   до   50  ) 
 и завершить   сообщение 

Открытая архитектура сценариев [ править ]

Важным аспектом реализации AppleScript является открытая архитектура сценариев ( OSA ). [40] Apple предоставляет OSA для других языков сценариев и сторонних продуктов сценариев/автоматизации, таких как QuicKeys и UserLand Frontier, чтобы они работали наравне с AppleScript. сценариев AppleScript был реализован как компонент , а основные спецификации для взаимодействия таких компонентов с OSA были общедоступными, что позволяло другим разработчикам добавлять в систему свои собственные компоненты сценариев. Публичные клиентские API для загрузки, сохранения и компиляции сценариев будут работать одинаково для всех таких компонентов, а это также означает, что апплеты и капли могут хранить сценарии на любом из этих языков сценариев.

Одной из особенностей OSA являются дополнения сценариев , или OSAX for Open Scripting Architecture eXtension . [36] которые были вдохновлены . внешними командами HyperCard Дополнения сценариев — это библиотеки , которые позволяют программистам расширять функции AppleScript. Команды, включенные в качестве дополнений к сценариям, доступны для всей системы и не зависят от приложения (см. также § Библиотеки AppleScript ). Редактор AppleScript также может напрямую редактировать и запускать некоторые языки OSA.

JavaScript для автоматизации [ править ]

В OS X Yosemite и более поздних версиях macOS компонент JavaScript для автоматизации ( JXA ) остается единственной серьезной языковой альтернативой OSA AppleScript. [14] хотя версии Perl , Python , Ruby и Tcl для Macintosh поддерживают собственные средства работы с событиями Apple, не будучи компонентами OSA. [30] : 516 

JXA также предоставляет Objective-C (и языка C). интерфейс иностранного языка [14] Будучи средой, основанной на движке JavaScriptCore WebKit, набор функций JavaScript синхронизируется с системным движком браузера Safari. JXA предоставляет систему модулей JavaScript, а также можно использовать модули CommonJS через браузер. [41]

См. также [ править ]

  • ARexx – конкурентоспособная технология 1987 года

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

  1. ^ Перейти обратно: а б с Кук, Уильям (2007). «AppleScript» (PDF) . Материалы третьей конференции ACM SIGPLAN по истории языков программирования . Ассоциация вычислительной техники . стр. 1–21. дои : 10.1145/1238844.1238845 . ISBN  9781595937667 . S2CID   220938191 .
  2. ^ Apple Inc. (2022). Редактор скриптов (версия 2.11). Проверено 11 ноября 2022 г.
  3. ^ «Дата выпуска OS X 10.10 Yosemite» . 16 октября 2014 года . Проверено 16 ноября 2014 г.
  4. ^ Перейти обратно: а б с д Гольдштейн, Адам (2005). AppleScript: недостающее руководство . Севастополь, Калифорния: O'Reilly Media . ISBN  0596008503 . OCLC   56912218 .
  5. ^ Перейти обратно: а б с д Это ж г час я Сандерсон, Хэмиш; Розенталь, Ханаан (2009). «Взаимодействие с командной строкой Unix». Изучите AppleScript (3-е изд.). Беркли: Апресс . стр. 863–896. дои : 10.1007/978-1-4302-2362-7_27 . ISBN  9781430223610 . ОСЛК   308193726 .
  6. ^ Флинн, Лори (27 февраля 1989 г.). «Apple обдумывает стандартизацию HyperTalk» . Инфомир . Том. 11, нет. 9. с. 31.
  7. ^ «Справочник по командам руководства по языку AppleScript: выполнение сценария оболочки» . разработчик.apple.com . Проверено 15 сентября 2019 г.
  8. ^ «Лучшие хиты Apple: 30 значимых продуктов» . macworld.com . Проверено 12 сентября 2019 г.
  9. ^ Грубер, Джон (март 2013 г.). «Маловероятное сохранение AppleScript» . Макмир . 30 (3): 100.
  10. ^ Лавджой, Бен (17 ноября 2016 г.). «Сал Согоян говорит: «Спросите Apple» о будущем автоматизации пользователей Mac, поскольку компания сдает позиции» . 9to5mac.com . Проверено 8 мая 2017 г.
  11. ^ Эванс, Джонни (17 ноября 2016 г.). «Действительно ли Apple хочет уничтожить Automator и AppleScript? Шокирующее увольнение ветерана-гуру разработчиков Apple вызвало шок в сообществе Mac» . Компьютерный мир.com . Проверено 8 мая 2017 г.
  12. ^ Гамет, Джефф (23 ноября 2016 г.). «Цель Apple — это не то же самое, что стремление к автоматизации Mac» . macobserver.com . Проверено 8 мая 2017 г.
  13. ^ «Скриптовые приложения» . разработчик.apple.com . Проверено 26 июля 2018 г.
  14. ^ Перейти обратно: а б с Сиракузы, Джон (16 октября 2014 г.). «OS X 10.10 Yosemite: обзор Ars Technica: автоматизация JavaScript» . Арс Техника . Проверено 8 мая 2017 г.
  15. ^ «Домашняя страница Smile and SmileLab» . satimage.fr . Проверено 8 мая 2017 г.
  16. ^ «Выпуск ASObjC Explorer 4 прекращен» . macosxautomation.com . Архивировано из оригинала 21 июня 2017 года . Проверено 8 мая 2017 г.
  17. ^ «Журнал Марка Олдрита »FaceSpan» . blog.latenightsw.com . Проверено 8 мая 2017 г.
  18. ^ «Руководство по языку AppleScript: Справочник по действиям с папками» . разработчик.apple.com . Проверено 8 мая 2017 г.
  19. ^ Миллер, Дэн (22 декабря 2010 г.). «Обзор капсулы: Hazel 2.3» . Macworld.com . Проверено 8 мая 2017 г.
  20. ^ Бим, Брайан (10 февраля 2015 г.). «Обзор Alfred: эта программа запуска приложений для Mac продолжает работать, но Alfred Remote не работает» . Macworld.com . Проверено 10 мая 2017 г.
  21. ^ Фрейкс, Дэн (2 июня 2011 г.). «Капсульный обзор: FastScripts 2.5» . Macworld.com . Проверено 8 мая 2017 г.
  22. ^ Брин, Кристофер (4 июня 2013 г.). «Mac Gems: Keyboard Maestro 6 — гений в выполнении повторяющихся задач» . Macworld.com . Проверено 10 мая 2017 г.
  23. ^ Брин, Кристофер (7 мая 2010 г.). «Обзор капсулы: QuicKeys 4» . Macworld.com . Проверено 8 мая 2017 г.
  24. ^ «AppleScripts — Quicksilver Wiki» . qsapp.com . Проверено 10 мая 2017 г.
  25. ^ Флейшман, Гленн (12 июня 2015 г.). «Обзор TextExpander 5» . Macworld.com . Проверено 8 мая 2017 г.
  26. ^ «Руководство по созданию сценариев автоматизации Mac: использование общесистемного меню сценариев» . разработчик.apple.com . Проверено 8 мая 2017 г.
  27. ^ «osascript(1) Страница руководства Mac OS X» . разработчик.apple.com . Проверено 8 мая 2017 г.
  28. ^ «Библиотеки AppleScript» . macosautomation.com . Архивировано из оригинала 26 июля 2020 года . Проверено 8 мая 2017 г.
  29. ^ «Сессия 416 WWDC 2013: Знакомство с библиотеками AppleScript» . asciiwwdc.com . Проверено 8 мая 2017 г.
  30. ^ Перейти обратно: а б Нойбург, Мэтт (2006). AppleScript: полное руководство (2-е изд.). Пекин: О'Рейли Медиа . ISBN  0596102119 . OCLC   68694976 .
  31. ^ Цай, Майкл (29 сентября 2014 г.). «AppleScript и Йосемити» . mjtsai.com . Проверено 9 мая 2017 г.
  32. ^ «Примечания к выпуску AppleScriptObjC» . разработчик.apple.com . Проверено 8 мая 2017 г.
  33. ^ Уолди, Бен (6 сентября 2012 г.). «Создание базового приложения AppleScriptObjC (Cocoa-AppleScript) с помощью Xcode» . peachpit.com . Проверено 9 мая 2017 г.
  34. ^ Таблица адаптирована из: Наганоя, Такааки. «Руководство по созданию сценариев ASObjCExtras» (PDF) . piyocast.com . Архивировано (PDF) из оригинала 9 октября . Получено мая 9 ,
  35. ^ «Введение в руководство по действиям Automator AppleScript» . разработчик.apple.com . Проверено 8 мая 2017 г.
  36. ^ Перейти обратно: а б «Техническое примечание TN1164: Дополнения к сценариям для Mac OS X» . разработчик.apple.com . Проверено 8 мая 2017 г.
  37. ^ «Примечания к выпуску AppleScript: изменения 10.5» . разработчик.apple.com . Проверено 8 мая 2017 г.
  38. ^ «Файл POSIX — Справочник классов — Руководство по языку AppleScript» . разработчик.apple.com . Проверено 8 января 2018 г.
  39. ^ «Руководство по языку AppleScript: обработчики в приложениях сценариев» . разработчик.apple.com . Проверено 21 июля 2013 г.
  40. ^ «Обзор AppleScript: открытая архитектура сценариев» . разработчик.apple.com . Проверено 8 мая 2017 г.
  41. ^ «Импорт скриптов» . Гитхаб . JXA-Кулинарная книга. 6 декабря 2019 г. Проверено 9 декабря 2019 г.

Дальнейшее чтение [ править ]

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: EAD0FEC74A17B64A69F4ABE8977D6CA4__1706060880
URL1:https://en.wikipedia.org/wiki/AppleScript
Заголовок, (Title) документа по адресу, URL1:
AppleScript - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)