Если вы уже пользовались Automator'ом, то должны знать, что он действительно облегчает работу с выполнением повторяющихся задач (Если еще не пользовались, прочитайте нашу первую прикладную статью по Automator). Немного поэкспериментировав с его встроенными действиями и действиями, скачанными с Интернета (неплохой сайт с архивом разнообразных действий: ), возможно вы хотели бы сделать Automator еще гибче и еще мощнее. К счастью, много других автоматизирующих процедур без проблем работают с Automator'ом. Соберите несколько технологий в один коктейль, и вы перейдете на высший уровень автоматизации, и главное - научитесь экономить собственное время!
Если вы уже пользовались Automator'ом, то должны знать, что он действительно облегчает работу с выполнением повторяющихся задач (Если еще не пользовались, прочитайте нашу первую прикладную статью по Automator). Немного поэкспериментировав с его встроенными действиями и действиями, скачанными с Интернета (неплохой сайт с архивом разнообразных действий: ), возможно вы хотели бы сделать Automator еще гибче и еще мощнее. К счастью, много других автоматизирующих процедур без проблем работают с Automator'ом. Соберите несколько технологий в один коктейль, и вы перейдете на высший уровень автоматизации, и главное - научитесь экономить собственное время!
Конечно, AppleScript в использовании более сложный, чем Automator (это же язык программирования, в конце концов ;-)), но зато он более мощный, а значит, является отличным дополнением к скриптам Automator. Беря Automator за основу, вы сможете составлять свои процедуры с легкостью перетаскивая нужные действия для выполнения несложных задач, а для реализации более сложных вставлять код AppleScript.
Эта процедура поможет вам просмотреть карту погоды на компьютере. Запустите Automator, перетащите на правую панель окна Automator действие Automator: Run AppleScript.
Переключитесь в Finder. Октройте папку /Library/Scripts/URLs и дважды кликните на файле Download Weather Map.scpt. В открывшемся окне Script Editor'а вы увидите код процедуры. Эта процедура скачивает с Интернета карту погоды. (Нажмите кнопку Run в ScriptEditor'е чтобы увидеть ее в работе.) Выберите весь текст кода кроме последней строчки, которая начинается со слов
tell application "Finder"
Скопируйте выделенный фрагмент и переключитесь обратно в Automator. Вставьте скопированный текст вместо автоматически сгенерированной строчки (* Your Script Goes Here *) в действии Run AppleScript. Для получения карты прогноза погоды по Украине нужно заменить «curwx_720x486.jpg» на «UAF36.GIF», а ссылку «http://maps.weather.com/images/maps/current/» на «http://dyn.gismeteo.ru/MAPS/». Теперь запустите на выполнение вашу процедуру нажав кнопку Run. На вашем рабочем столе появится файл weathermap.jpg.
Перетащите действие Finder: Get Specified Finder Items в конец вашей процедуры. Кликните на значке «плюс» (+) и выберите файл weathermap.jpg на рабочем столе. Нажмите Open (Открыть). (Это указывает Automator'у, что дальше ваша процедура будет выполнять действия над скачанной картой погоды.) Теперь перетащите действие Preview: Pad Images в конец процедуры. В диалоговом окне вас спросят, хотите ли вы создать копию рисунка. Нажмите Don’t Add (не создавать).
Выберите желаемую высоту и ширину рисунка в текстовых полях. Выберите опцию Scale Image Before Padding, чтобы быть уверенным, что ваш рисунок будет правильно отображаться.
Перетащите действие Run AppleScript в конец вашей процедуры. Здесь при помощи AppleScript'а откроем нашу преобразованную карту. Вместо строчки (* Your Script Goes Here *) вставьте
tell application "Finder" to open input
(в роли параметра "input" здесь выступает weathermap.jpg).
Теперь, когда вы запустите свою процедуру, ваш Мас скачает с Интернета новейшую карту погоды и, словно по волшебству, откроет ее пред ваши светлые очи :-)
Инструментарий Automator'а по работе с Microsoft Office довольно таки скуден. Но легко записать макрос в одной из программ пакета Office, а потом просто вызвать его в процедуре Automator'a. Хитрость состоит в том, чтобы использовать коротенький AppleScript в качестве посредника.
Используя некоторые трюки из предыдущей процедуры создадим процедуру,которая будет автоматически защищать паролем и архивировать текущий документ Microsoft Word. Для начала запустите Microsoft Word и откройте нужный вам документ. Вы защитите этот документ паролем одновременно обучив Word автоматически делать то же самое с любым другим документом.
Выберите Tools > Macro > Record New Macro, в поле Macro Name напишите Encrypt. Нажмите ОК. Теперь Microsoft Word записывает все, что вы делаете. Выберите Word > Preferences а потом в списке слева выберите закладку Security. В поле Password To Open (Пароль на открытие) напишите пароль, который вы хотите использовать для защиты. Теперь при попытке открытия этого файла Word будет запрашивать ваш пароль. Выберите File > Save, а затем Tools > Macro > Stop Recording.
Переключитесь в Automator, создайте новую процедуру и добавьте действие Automator: Run AppleScript. Замените весь текст в окне скрипта следующим кодом:
on run {input, parameters}
tell application "Microsoft Word"
run VB macro macro name "Encrypt" -- запуск макроса
return {(the path of the front document & ":" & the name of the front document) as alias} -- формирование пути к документу Word для следующего действия
end tell
end run
Добавьте действие Finder: Create Archive в конец процедуры. Это действие возьмет только что защищенный файл Word и создаст для вас его заархивированную копию. Выберите имя для архива, что-то вроде Encrypted_doc, в поле Save As. Во всплывающем меню выберите где будет создан архив.
Чтобы сохранить вашу новую процедуру выберите File > Save и назовите ее. Выберите Workflow в меню File Format. Эта же процедура может работать и с Excel'ем, просто повторите выше описанные шаги, но макрос создавайте в Excel'е и замените в коде AppleScript'a Word на Excel.
Скачать скрипты рассмотренные в этой статье.
В последущих статьях мы продолжим знакомиться с Automator и разбирать типовые задачи. Следите за публикациями.
Быстрый поиск:
Automator,
Tiger
Декабрь 18, 2006 | Андрей Каплуненко |
