2003.07.10, Автор: Кирилл Корчагин2494 прочтений

Избавиться от рутины

Теги: Рабочий цех Publish

Основы AppleScript в вопросах и ответах...

Основы AppleScript в вопросах и ответах

Переход на MacOS X можно считать состоявшимся фактом. Не все привычные специалистам по допечатной подготовке инструменты пережили перемены — отказаться от любимых и удобных программ сложно, особенно когда их отсутствие не лучшим образом сказывается на эффективности работы. Но некоторым технологиям, прочно вошедшим в издательский обиход, перемены только на пользу. Достойное продолжение получила и AppleScript.

Ряд новых возможностей «десятки» автоматизируются с её помощью. Область внедрения языка сценариев (скриптов, как их называют специалисты) теперь куда шире, чем в «классике». Все новые cocoa-программы (точнее — их интерфейс) совместимы со скриптами. На AppleScript можно писать и целые приложения с полноценным пользовательским интерфейсом в стиле aqua. На ней создаются дроплеты (droplet) — сценарии, запускаемые после того, как на них «перетащили» файлы. Ещё одно направление развития, помимо взаимодействия с пользователем, — допустимость команды shell в сценариях.

Для чего?

Известная поговорка «Повторение — мать учения» не может быть оправданием однообразных упражнений с клавишами в попытках обуздать потоки данных. Открыть одну программу, выделить, скопировать, перейти в другую, вставить, вернуться в первую, выделить, скопировать… Пальцы немеют, в глазах круги…

Неужели мы появились на свет ради выделения-копирования-вставки? Нет! Надо пересохранить в другом формате два десятка документов? «Кстати, мы забыли вам дать спецификацию, надо совсем в другом формате и вот с этими изменениями». И всё заново. Ну почему эту спецификацию не принесли на полчаса раньше?

Так мы ничему не научимся. Сколько повторяющихся действий совершает верстальщик, выделяющий в программе телевидения время каждой передачи? Сколько раз надо подвести курсор к началу строки, выделить число и задать форматирование? А сортировка файлов, почты, форматирование текста, подготовка отчётов? А архивирование файлов с готовой вёрсткой, текстовыми и иллюстрационными оригиналами после сдачи номера?

По исследованиям 1998 г. независимой исследовательской компании Gistics, поиск файлов в архивах, не организованных должным образом, заканчивается неудачей в семи случаях из десяти. И такие проблемы присущи многим видам деятельности, связанным с компьютером, а не только редакционно-издательским процессом. А объём информации неотвратимо растёт. Не проще ли доверить рутину Apple Script и высвободить время для более приятных дел?

Где?

AppleScript хорош поддержкой многих программ и дополнений. Учитывая склонность платформы Мас к настольным издательским системам, в список вошли QuarkXPress, Adobe InDesign, Adobe Photoshop, Adobe Illustrator, а также File-Maker, BBEdit, Textedit, Apple Works, iViewMultimedia, все программы пакета MS Office и др. Программы, отвечающие на команды AppleScript, называются скриптуемые (scriptable).

Редакторы текста, звука, видео, графические, пакеты для вёрстки и т. д. — все имеют различные интерфейсы, т. е. каждая программа говорит на своём диалекте. Узнать, какие команды сценариев понятны программе, очень просто — вся информация находится в ней самой.

Список ключевых слов, известных программе, называется словарь (dictionary) и содержит имена команд, объектов и их свойств. Открытие в редакторе сценариев командой меню Open Dictionary файла программы даёт доступ к словарю.

Все приложения поддерживают четыре основные команды (Run, Open, Quit, Print), поэтому их описание порой не приводится. Например, Quit удобно использовать даже для завершения приложений, не поддерживающих AppleScript. Основное скриптуемое приложение, конечно, Finder. Документ без файла — как дерево без корней. С помощью AppleScript можно искать файлы и папки, менять имена, перемещать и копировать, удалять, проверять размеры.

Отлично автоматизируются и последние версии программ Adobe, отличающиеся понятной объектной моделью, обширными словарями и устойчивостью, — InDesign, Photoshop и Illustrator (для двух последних необходимы дополнительные модули — скачиваются с сайта разработчиков). В InDesign есть специальная палитра Scripts для запуска сценариев без переключения в Finder. В палитре Script Label фреймам присваиваются метки, по которым AppleScript легко находит нужный даже в очень большом документе. А в Photoshop или Illustrator на AppleScript можно попробовать написать свой фильтр. Автор, например, использует сценарии для создания штриховки в Illustrator, а в Photoshop — для изменения размеров и обрезки изображения по размерам бокса (или фрейма) в программе вёрстки, в который оно помещено.

Приложения, связывающие меню или кнопки со сценариями, называются присоединяемыми (attachable). InDesign — в их числе

К огорчению пользователей QuarkXPress, в классическом режиме пакет реагирует на сценарии AppleScript неадекватно. С нетерпением ждём новую версию…

Важная часть AppleScript — дополнения (Scripting Additions). Существуют и развиваются в Mac OS X так же хорошо, как и в классической системе; предназначены для расширения возможностей языка новыми командами. Standart Additions служит для вызова стандартных диалогов сообщения, выбора папки, создания файла или выбора из списка, для записи и чтения файла, получения текущего времени и доступа ко многим другим функциям. Команда из Standart Additions do shell script исполняет сценарий shell, при этом можно указать имя и пароль администратора. В папке Scripting Additions находятся следующие дополнения: Keychain Scripting (Сценарий последовательностей нажатий клавиш), Image Capture Scripting (Сценарий захвата изображения), URL Access Scripting (Сценарий доступа по URL), Digital Hub Scripting (Сценарий цифрового хаба). Названия говорят сами за себя.

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

Чем?

В комплекте с MacOS X поставляется старый-добрый Script Editor. Он подойдёт для начинающих скриптеров или создания небольших сценариев. Не так давно Apple представила бета-версию Script Editor 2.0 с богатыми возможностями по редактированию и отладке сценариев. Текст редактируется перетаскиванием, наконец-то появился поиск с заменой, доступно написание JavaScript-сценариев.

Новый Script Editor 2.0 можно скачать с сайта Apple.com

Когда скромных функций Script Editor станет недостаточно, стоит ознакомиться со Script Debugger от Late Night So рuware. Это не бесплатная, но исключительно мощная среда для разработки, редактирования и отладки сценариев. Полностью поддерживается технология drag-n-drop. Основная особенность, оправдывающая название, — пошаговая отладка сценариев. Работать одно удовольствие — вызываются события Open, а также Idle и Quit для сценария, находящегося в окне редактирования. Многие вспомогательные функции построены в виде плавающих палитр. Функции запуска сценариев с передачей команд Open, Idle и Quit являются частью палитры Scripts. В ней много полезных инструментов для управления окнами, упрощения редактирования, все построены в виде сценариев Script Debugger, добавляются и свои вспомогательные. Фрагменты кода сохраняются в палитре Clippings.

Script Debugger: всё под рукой

При открытии словарей приложений путь к ним сохраняется в палитре Applications. Script Debugger отображает словари в трёх режимах: обычном; как объектную иерархическую модель; режиме Explorer, где отображаются все текущие объекты программы, их элементы и свойства с текущими значениями, которые здесь же и изменяются. Explorer особенно удобен для изучения объектной модели приложений. Словари просматриваются и в виде, адаптированном для JavaScript. Но этим потенциал Script Debugger не исчерпывается.

В Mac OS X работа не ограничена простыми сценариями. Apple Script теперь является частью набора инструментов для разработки программ Mac OS X — Developer Tools. На AppleScript можно писать приложения с использованием профессиональных инструментов. В Apple эту технологию называют AppleScript Studio.

Для AppleScript теперь доступен любой элемент aqua-интерфейса: также как и для других языков программирования

Работа над новым приложением начинается с создания проекта. Первый шаг — формирование пользовательского интерфейса программы. Доступны любые элементы Aqua: меню, кнопки, поля ввода, списки, скроллеры, значки, индикаторы прогресса и т. п. Затем для событий, вызываемых элементами интерфейса, создаются соответствующие обработчики AppleScript, содержащие команды сценария. Для быстрого и удобного запуска сценариев используется ScriptMenu из папки Applications/AppleScript. Перетащите Script Menu.menu в меню на верхней части экрана. Справа появится значок AppleScript. При нажатии на него отобразится меню из сценариев, размещённых в папке User/Library/Scripts.

Как?

Создайте своё меню из сценариев

Как и любой другой язык, AppleScript придётся сначала изучить. Не пугайтесь — он простой и удобный, конструктивно максимально приближен к английскому языку. Слова имеют вид существительных, глаголов, прилагательных и предлогов. Получив первые результаты, вы поймёте, что не зря потратили время. Развивая познания, сможете комбинировать, собирать, как из кубиков, новые сценарии или использовать их части для составления сложных программ. Проще всего изучать AppleScript на примерах (см. Applications/AppleScript/ Example Scripts).

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

Об авторе: Кирилл Корчагин (kirkor@yezhe.ru), заведующий отделом допечатной подготовки издательской группы «Еже».


AppleScript: оптимизируй повседневность

Внимание: конкурс от Apple IMC!

Условия конкурса:
  1. Пройдёт с 1 по 31 июля 2003 г.
  2. Конкурсанты должны придерживаться следующих направлений:
    • AppleScript в DTP;
    • расширение возможностей iApps;
    • скрипты и программы на AppleScript для развлечений.
  3. Работы будут рассматриваться с 1 по 10 августа 2003 г. Награждение победителей состоится в середине августа.
  4. Компания Apple IMC оставляет за собой право размещать лучшие скрипты на сайте www.apple.ru/applescript/ для свободного распространения.
Призы:

1-е место
iPod 10 Гбайт — лучший MP3-проигрыватель, вмещающий тысячи песен, адресную книгу и любые файлы на жёстком диске FireWire.

2-е место
iPod 5 Гбайт — такой же красивый и элегантный, как и первый приз (но чуточку менее ёмкий).

3-е место
Годовая подписка на .Mac — пакет интернет-услуг от компании Apple.

Работы будут оцениваться независимым жюри

Приём заявок по адресу contest@apple.ru.

Полные условия конкурса на сайте apple.ru/applescript.


Ещё?

Начните изучение AppleScript с раздела сайта www.apple.com/applescript.

Русскоязычный ресурс — www.apple.ru/applescript.

Масса полезных дополнений на сайте www.osaxen.com.

Не обойдите вниманием сайт автора www.yezhe.ru/applescript (руководство по Apple-Script, форум и примеры).

Полезные утилиты на AppleScript — homepage.mac.com/e_s_m/.

Различные ресурсы для AppleScript (новости, рассылки, форумы, дополнения) — macscripter.net.

Архив журналов в свободном доступе.

На ту же тему:
  • Управление цветом в Adobe Creative Cloud без секретов

     

     

    Подробное руководство по настройке параметров управления цветом в программах Adobe.

    Без модуля управления цветом — Color Management Module (CMM) — и цветовых профилей ICC предсказать на экране монитора результат печати невозможно. Даже при выборе опции Don`t color manage (Не управлять цветом, Отменить управление цветом) * CMM и цветовые профили всегда задействуются в Adobe Photoshop, хотя и не оптимальным образом.

     

  • Фигурный текст и CorelDRAW (ч. 2) *

    Всё, что вы хотели знать о фигурном тексте, но боялись спросить.

    Импорт–экспорт текста

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

     

  • Фигурный текст и CorelDRAW

    Всё, что вы хотели знать о фигурном тексте, но боялись спросить.

    Как невозможно познать всю Вселенную (она же всё время расширяется), так в каждой новой версии CorelDRAW каждый раз ты открываешь для себя новые возможности, приёмы и хитрости. Конечно, эта программа не для вёрстки больших, насыщенных текстами книг, брошюр, журналов, но возможности CorelDRAW для работы с текстами позволяют сверстать и подготовить к печати многостраничный промышленный каталог, с чертежами, схемами, векторными рисунками, фотографиями. И, конечно, текстовые фрагменты обязательно есть и в визитке, и в банере, и в рекламном проспекте. А если применять к тексту кое-какие трюки и эффекты, то можно создать настоящие шедевры дизайна и типографики… Конечно, многим пользователям хорошо известны инструменты и методы работы с фигурным текстом. Этот цикл статей — попытка систематизировать основные приёмы.

     

  • Раскрывая возможности белых чернил *
     

    Как дополнительные белые чернила помогают создавать новые применения широкоформатной печати.

    Сегодня ряд моделей широкоформатных и сверхширокоформатных принтеров могут печатать чернилами дополнительного цвета — белого, что создаёт новые возможности применения этих устройств. Но в принтерах могут быть реализованы различные технологии печати белыми чернилами, и у разных технологий — свои возможности и ограничения.

     

  • Маленькие хитрости большого Corel
    Полезные советы для пользователей CorelDRAW и Corel Photo-Paint.
  • InDesign осваивает ePub

    Приёмы построения ePub в Adobe InDesign CC. Советы издательствам, как без лишних хлопот готовить книги для LitRes или Bookmate.

    Девятый вал

    Старый мир огромных издательств и одиозных акул книжного бизнеса, бросающих крохи авторам, уходит в историю. Люди перестают читать книги. Тиражи падают, бумажная книга испытывает конкуренцию за внимание аудитории со стороны других многочисленных источников. Теперь не человек ищет, что почитать, а различные медиа-источники борются за его внимание. Цунами информации обесценивает её для потребителя. В борьбе за внимание аудитории авторы и правообладатели часто готовы раздавать свой материал бесплатно. В такой ситуации читатель часто не хочет платить, читает по вершкам, предпочитает дайджесты многостраничным описаниям парижских крыш. Как следствие, качество материала падает, объём книг и статей сокращается, снижаются продажи, а издатели лишаются доходов.

     


comments powered by Disqus