Ссылка свойства действия Automator
При разработке действия для Automator один из шагов указывает свойства действия в его информационном списке свойств (см. Указание Свойств Действия). Automator использует эти свойства в различных целях среди них определяющий типы данных, которые действие может принять и произвести, установив начальные параметры в пользовательском интерфейсе действия, и получив имя действия, значок, связанное приложение и категорию. Следующие разделы документируют свойства Automator и описывают основанные на UTI идентификаторы типов, которые Вы используете для указания типов данных, которые действие предоставляет и принимает.
Ключи свойства и значения
Необходимо указать некоторые свойства Automator, описанные ниже в списке свойств информации проекта действия (Info.plist
), и дополнительно может указать другие. Info.plist
файл в шаблоне проекта включает, за исключением AMRequiredResources
, свойства Automator (с комментариями для значений).
Словарь, описывающий данные, которые примет действие. Это требуемое свойство имеет три подсвойства:
Container
— Строка, указывающая, как передаются многократные вводы. В настоящее время это должно иметь значение по умолчанию (List
).Optional
— Булевская переменная, указывающая, является ли введенный дополнительным для этого действия. Если Ваше действие может функционировать должным образом без ввода, указать<true/>
; если это требует ввода, указать<false/>
. Если это свойство не указано, Automator принимает значение по умолчанию</false>
.Types
— Массив идентификаторов типов, указывающих типы данных, которые Ваше действие может принять как допустимый ввод.
Пример:
<key>AMAccepts</key>
<dict>
<key>Container</key>
<string>List</string>
<key>Optional</key>
<true/>
<key>Types</key>
<array>
<string>com.apple.textedit.document-object</string>
<string>public.text</string>
<string>public.item</string>
</array>
</dict>
Для получения информации о допустимых идентификаторах типов, включая использование
'*'
чтобы показать, что действие может принять любой тип данных, обратитесь к Идентификаторам типов. См. также соответствующее свойствоAMProvides
.Строка, идентифицирующая первичное приложение что использование действия для выполнения его работы. Например, если бы Ваше действие управляет приложением Средства поиска с командами AppleScript, Вы указали бы «Средство поиска» для этого свойства. Automator использует это свойство в качестве фильтра и в качестве критерия поиска. Примерами возможных значений является Адресная книга, iCal и XCode.
Пример:
<key>AMApplication</key>
<string>Finder</string>
Булевская переменная, управляющая, позволяет ли действие представление выбранных частей его пользовательского интерфейса для функции Show When Run. Если это свойство установлено в
<true/>
(значение по умолчанию), части представления действия (или автоматически или вручную сгенерированный) появляются как элементы в табличном представлении, представленном под кнопкой Options. Если это установлено в<false/>
, только флажок «Show Action When Run» представлен (предполагающий, чтоAMCanShowWhenRun
свойство установлено в<true/>
).Булевская переменная, управляющая, активирована ли опция Show When Run для действия. По умолчанию это установлено в
<true/>
, то, чтобы заставлять кнопку Options быть выведенным на экран в нижнем левом углу представления действия. Когда кнопка нажата, представление расширяется для представления флажка «Show Action When Run» и, дополнительно, средства управления для выбора частей представления действия для представления пользователям потока операций (см. описаниеAMCanShowSelectedItemsWhenRun
). УстановкаAMCanShowWhenRun
к<false/>
удаляет кнопку Options из представления действия.Строка (или массив строк), что использование Automator для группировки действия с подобными действиями с точки зрения их эффектов или объектов они воздействуют на. Automator представляет категории в своем пользовательском интерфейсе и также использует категорию действия в качестве критерия поиска.
Примечание: Automator не показывает категории в своем пользовательском интерфейсе в версии 10.4 OS X, хотя это действительно использует их в поисках.
В OS X v10.4, названия категории были просто строками (или массивы строк) со значениями теми, которые Находят, Музыка, Изображения, Система, Терминал, текст и Утилита. Вы могли также указать имена для новых категорий.
Пример (OS X v10.4):
<key>AMCategory</key>
<string>Pictures</string>
Запускаясь в OS X v10.5, названия категории представляют коды (или массивы кодов), и необходимо использовать кодовые названия, показанные в Таблице 1.
Пример (OS X v10.5):
<key>AMCategory</key>
<string>AMCategoryPhotos</string>
Для действий, перенесенных на следующий период от OS X v10.4, Automator попытается категоризировать действие соответственно. Например, действие с названием категории «Места подачи питания» будет помещено в категорию Представлений (
AMCategoryPresentations
). Действие с нераспознанным названием категории будет помещено в универсальную Другую категорию.При восстановлении более старого действия в OS X v10.5, не изменяя значение названия категории он будет все еще создавать и работать, но Вы получите предупреждение от
amlint
то, что Вы не используете одно из предопределенных значений.Действие, скомпилированное в OS X v10.5, не будет работать в v10.4 вследствие двоичной несовместимости.
Таблица 1 кодовые названия AMCategory, доступные в версии 10.5 OS X Кодовое название
Категория
AMCategoryCalendar
Календарь
AMCategoryChat
Чат
AMCategoryContacts
Контакты
AMCategoryDeveloper
Разработчик
AMCategoryDocuments
Документы
AMCategoryFilesAndFolders
Файлы и папки
AMCategoryFonts
Шрифты
AMCategoryInternet
Интернет
AMCategoryMail
Почта
AMCategoryMovies
Фильмы
AMCategoryMusic
Музыка
AMCategoryPDFs
Файлы PDF
AMCategoryPhotos
Фотографии
AMCategoryPresentations
Представления
AMCategorySystem
Система
AMCategoryText
Текст
AMCategoryUtilities
Утилиты
Словарь, содержащий значения по умолчанию для элементов пользовательского интерфейса, которыми управляет привязка Какао. Ключи являются именами элементов пользовательского интерфейса, вводимых как атрибуты экземпляра Параметров (NSObjectController) в Интерфейсном Разработчике. Значения должны содержаться в элементах, идентифицирующих тип данных; булевская переменная используется для флажков, целого числа для раскрывающегося индекса элемента и строки для текстовых полей. Это свойство требуется для действий, имеющих параметры.
Пример:
<key>AMDefaultParameters</key>
<dict>
<key>fromChoice</key>
<integer>1</integer>
<key>replaceExisting</key>
<boolean>No</boolean>
<key>toChoice</key>
<integer>0</integer>
<key>toDirectory</key>
<string></string>
</dict>
Словарь, указывающий содержание описания действия, появляющегося в нижнем левом представлении Automator, когда выбрано действие. Значок и заголовок описания получены из
AMIconName
иAMName
свойства, соответственно.AMDescription
словарь имеет следующие ключи (значения, для которых все строки):AMDSummary
— Сжатое описание того, что делает действие. Это появляется непосредственно в соответствии с заголовком действия. Этот текст требуется.AMDInput
— Типы данных действие принимают. Если это подсвойство не указано, использование Automator текст по умолчанию, соответствующий идентификаторам типов, указанным дляAMAccepts
. он подзаголовок «Ввод»: предшествует этому тексту в выведенном на экран описании.AMDResult
— Типы данных действие обеспечивают. Если это подсвойство не указано, использование Automator текст по умолчанию, соответствующий идентификаторам типов, указанным дляAMProvides
. Подзаголовок «Результат»: предшествует этому тексту в выведенном на экран описании.AMDOptions
— Описывает то, что может быть установлено в пользовательском интерфейсе действия. Подзаголовок «Опции»: предшествует этому тексту в выведенном на экран описании. Используйте это подсвойство только для объяснения аспектов пользовательского интерфейса действия, которые не с готовностью очевидны.AMDAlert
— Указывает на важное возможное последствие действия, такого как перезапись файла. Подзаголовок «Предупреждение»: предшествует этому тексту в выведенном на экран описании.AMDNote
— Дополнительная информация, которую пользователь должен знать (но не как критически настроенный как предупреждение). Подзаголовок «Примечание:» предшествует этому тексту в выведенном на экран описании.AMDRequires
— Что-либо, чего это действие требует для работы должным образом, такая выведенная на экран веб-страница или подключенный локальный принтер. Подзаголовок «Требует»: предшествует этому тексту в выведенном на экран описании.AMDRelatedActions
— Укажите пакет IDs действий, особенно связанных с этим действием. (Можно посмотреть наInfo.plist
файл в действии связывается для обнаружения его пакета ID.) Может быть по крайней мере три вида отношений среди действий на основе того, какую функцию они выполняют:Связанная функция: действия, вероятно, будут использоваться в том же потоке операций, таком как Новое сообщение и Отправят Исходящие сообщения.
Параллельная функция: действия выполняют ту же общую задачу, но немного отличающимися способами или использование различных приложений, тех, которые Отправляют Сообщение электронной почты и Отправляют сообщение iChat.
Противопоставление против функции: одно из действий отменяет эффект другого, такого как Подключение к Серверам, и Извлеките Диск.
Пример:
<key>AMDescription</key>
<dict>
<key>AMDInput</key>
<string>Project file from the previous action.</string>
<key>AMDOptions</key>
<string>Set, retrieve, increment, tag, submit, get
marketing version, set marketing version. </string>
<key>AMDResult</key>
<string>Pass information to next action or to a log
file.</string>
<key>AMDSummary</key>
<string>This action changes the version information of
an Xcode project. It uses the agvtool shell tool, and
allows you to set most all of the options of that
tool.</string>
</dict>
В версии 10.4 OS X это - строка, указывающая файл, содержащий 16 16 пиксельный значок, который Automator выводит на экран налево от имени действия в его пользовательском интерфейсе. Строка имени значка не должна включать расширение, но сам файл должен иметь расширение
.tiff
. Это может относиться к файлу значка в Automator или к файлу пользовательского значка в пакете действия.Пример:
<key>AMIconName</key>
<string>MyApp</string>
Также в OS X v10.4, можно сохранить в пакете действия большое (32 32 пиксель) версия того же значка для Automator для отображения в описании действия. Этот файл значка должен иметь имя Имени формы
Large.tiff
. В примере свойства выше, этот файл имел бы имя таким какMyAppLarge.tiff
.Запускаясь в OS X v10.5, строка имени значка может относиться к файлу образа в любом из основных форматов, которые Какао поддерживает, такие как Файл значка, TIFF, JPEG и PNG, со всеми стандартными изменениями расширений файла (
.icns
,.tiff
,.tif
,.jpg
,.jpeg
, и т.д.). Как в более ранней версии, Вы не включаете расширение как часть имени значка. Можно предоставить и 16 16 и 32 32 пиксельный значок в том же файле образа. Для обратной совместимости, использования.tiff
файлы все еще поддерживаются, и необходимо предоставить значки в ранее описанном формате для действия, которое должно работать в более ранних версиях OS.Массив строк, дающих ключевые слова Automator для идентификации действия в поисках. Ключевые слова не показаны в пользовательском интерфейсе Automator, но используются в поисках. Обратите внимание на то, что Automator автоматически использует слова на имена действий как ключевые слова, таким образом, нет никакой причины повторить их в этом свойстве. Ключевые слова в качестве примера являются Изменением, Папкой и Меткой.
Пример:
<key>AMKeywords</key>
<array>
<string>Add</string>
<string>Spotlight</string>
<string>File</string>
</array>
Строка, дающая имя действия, которое будет выведено на экран в пользовательском интерфейсе Automator. Это свойство требуется. Имена в качестве примера - то, “Добавьте Присоединения к Переднему сообщению”, “Файлы Копии”, и “Профилируют Исполнимую программу”.
Пример:
<key>AMName</key>
<string>Copy Files</string>
См. инструкции для именования действий в Руководстве по проектированию для Действий.
Словарь, описывающий данные, которые действие генерирует, как выведено. Это требуемое свойство имеет два подсвойства:
Container
— Строка, указывающая, как передаются многократные выводы. В настоящее время это должно иметь значение по умолчанию (List
).Types
— Массив идентификаторов типов, указывающих типы данных, которые Ваше действие может предоставить как допустимый ввод.
Пример:
key>AMProvides</key>
<dict>
<key>Container</key>
<string>List</string>
<key>Types</key>
<array>
<string>public.item</string>
</array>
</dict>
Для получения информации о допустимых идентификаторах типов обратитесь к Идентификаторам типов. См. также соответствующее свойство
AMAccepts
.Массив словарей, описывающий приложения, файлы или другие ресурсы, которых действие требует для работы должным образом. Если указанный ресурс не доступен, когда пакет загружается, Automator предупреждает пользователя. Если ресурс не доступен, когда поток операций действия выполняется, Automator просит, чтобы пользователь определил местоположение недостающего ресурса. Если пользователь не находит ресурс, поток операций прекращает выполняться. Это свойство имеет четыре подсвойства для каждого словаря:
Display Name
— Строка, идентифицирующая имя ресурса, как выведено на экран в Средстве поиска, например «iPhoto». Оставьте это значение, незаполненное еслиType
ключ устанавливается, чтобы «зарегистрировать».Resource
— Строка, идентифицирующая требуемый ресурс. Формат ресурса обозначенType
подсвойство (см. примечание ниже).Type
— Строка, указывающая тип идентификатора ресурса, данного как значениеResource
: «приложение», “код создателя” или «файл».Version
— Строка, указывающая минимальную версию ресурса, требуется этапом в n.
n.
n формат (например, «4.0.1»).
Примечание: Значение для
Resource
ключ словаря зависит от значения дляType
. Если тип является «приложением», ресурс указан идентификатором пакета приложения; если тип является “кодом создателя”, ресурс указан кодом создателя с четырьмя символами; если тип является «файлом», ресурс указан путем целой файловой системы.Примеры:
<key>AMRequiredResources</key>
<array>
<dict>
<key>Display Name</key>
<string>iTunes</string>
<key>Resource</key>
<string>com.apple.iTunes</string>
<key>Type</key>
<string>application</string>
<key>Version</key>
<string>4.6</string>
</dict>
<dict>
<key>Display Name</key>
<string></string>
<key>Resource</key>
<string>/usr/bin/otool</string>
<key>Type</key>
<string>file</string>
<key>Version</key>
<string>10.3.5</string>
</dict>
</array>
Если действие может потенциально потерять данные, укажите в этом словаре ряд подсвойств, заставляющих Automator отображать предупреждение, когда действие добавляется к потоку операций. Информация в предупреждении прибывает из
AMWarning
подсвойства. Дополнительно, это свойство может позволить пользователю вставлять другое действие перед этим для защиты от потери данных. Общее предупреждение в Automator добавляет действие Файлов Копии перед текущим действием. В результате действие изменяет копии файлов, а не оригиналов. Это свойство требуется, но только значение дляLevel
ключ должен быть указан (и установлен в значение по умолчанию 0 в шаблонах проекта).Action
— Строка, указывающая идентификатор пакета действия, которое будет вставлено (если пользователь соглашается) в потоке операций перед этим действием. Оставьте это значение, незаполненное, если Вы просто хотите предупредить пользователя. Если Вы не указываете значение для этого ключа,ApplyButton
строка используется для заголовка кнопки, ноIgnoreButton
значение проигнорировано.ApplyButton
— Строка, которая является заголовком для кнопки, добавляющей предложенные меры или, если никакое действие не указано, который продолжает поток операций. Примеры, «Добавляют» и «Продолжаются».IgnoreButton
— Строка, которая является заголовком для кнопки для отклонения предложенных мер или, если никакое действие не указано для отмены потока операций. Примеры, “не Добавляют” и «Отмена».Level
— Целое число, указывающее уровень предупреждения:0: Безопасная работа (значение по умолчанию)
1: Вносит обратимые изменения, например Зеркальные изображения
2: Вносит необратимые изменения, например Изображения Обрезки
Это - единственное требуемое значение
AMWarning
словарь. При указании уровня 1 или 2, необходимо также указать aMessage
строка.Message
— Строка, которая является предупреждением, представленным пользователям в листе.
Следующий пример показывает
AMWarning
свойство, просто предупреждающее пользователя, не предлагая предшествующее действие:<key>AMWarning</key>
<dict>
<key>Action</key>
<string></string>
<key>ApplyButton</key>
<string>Continue</string>
<key>IgnoreButton</key>
<string>Cancel</string>
<key>Level</key>
<integer>2</integer>
<key>Message</key>
<string>This action will update the connected iPod. It cannot be undone.</string>
В этом примере свойство предлагает предшествующие меры:
<key>AMWarning</key>
<dict>
<key>Action</key>
<string>com.apple.Automator.CopyFiles</string>
<key>ApplyButton</key>
<string>Add</string>
<key>IgnoreButton</key>
<string>Don’t Add</string>
<key>Level</key>
<integer>2</integer>
<key>Message</key>
<string>This action will change the image files passed into it. Would you like to add a Copy Files action so that the originals are preserved?</string>
AMAccepts
AMApplication
AMCanShowSelectedItemsWhenRun
AMCanShowWhenRun
AMCategory
AMDefaultParameters
AMDescription
AMIconName
AMKeywords
AMName
AMProvides
AMRequiredResources
AMWarning
Идентификаторы типов
Automator AMAccepts
и AMProvides
свойства используют идентификаторы типов для указания типов данных для вводов и выводов действия. Automator использует текст в Столбце описания в Таблице 2 и Таблице 4 в ее пользовательском интерфейсе для обозначения типов входных данных и выходных данных для действий в потоке операций.
Действия Automator могут использовать идентификаторы открытого типа в трех категориях. Первое является определенным для технологий или приложений Apple. Таблица 2 перечисляет текущие идентификаторы в этой категории.
Специальное подмножество идентификаторов типов, определенных Apple, является зарезервированными для действий Objective C, описанных в Таблице 3.
Заключительная категория идентификатора типа включает внешне определенный UTIs. Таблица 4 перечисляет эти общедоступные идентификаторы.
Можно преобразовать между идентификаторами типов — и самое главное между внешне и внутренне определенные идентификаторы — использование специального вида действия вызвало действие преобразования. Посмотрите Создание Действия Преобразования для подробных данных.