Экономим время путём автоматизации Mac
Russian (Pусский) translation by Ellen Nelson (you can also view the original English article)
У многих людей неправильно понятие автоматизации. Они часто думают о футуристических фантазиях, в которых роботы автоматически делают за вас всё. Это было бы полной автоматизацией. На практике, автоматизация это любая помощь в выполнении связанных действий. Поэтому в любое время, когда вы можете заставить компьютер помочь в вам в чём-либо, это автоматизация.
Например, ввод чисел в электронную таблицу и выполнение вычислений с числами это тип автоматизации. Каждый раз, когда проверка орфографии корректирует слово с ошибкой в тексте, это автоматизация. Даже уведомление о приходе электронной почты является типом автоматизации.
Использование автоматизации — это умение искать способы, как компьютеру может помочь с вашими действиями. У большинства людей, к сожалению, нет такого умения, чтобы воспользоваться преимуществами автоматизации. Вы думаете о том, как сделать какие-то действия и просто делаете их. Набор качеств для автоматизации заключается в идее найти подходящего кандидата на атвтоматизацию, т.е чего-то что выполняется более двух раз.
Чтобы использовать автоматизацию, вы должны понимать какие типы автоматизации есть и как они работают. Благодаря этим знаниям вы начнете искать способы воплощения этих знаний в действие.
Типы автоматизации
Вся автоматизация бывает одного из трёх типов: автоматизация процессов, автоматизация по переключателю и гибридная автоматизация. У каждого из них есть свои подтипы. Понимая эти типы и приложения, используемые для этих типов автоматизации, вы лучше узнаете, как создать автоматизацию под ваши нужды.
Автоматизация процесса
Автоматизация процесса это преобразование одного или нескольких элементов в другой элемент с помощью заданного процесса. Поэтому, делая снимок и преобразовывая его в другой тип файла с заданным количеством бит-плоскостей, это автоматизация процесса.
Изменение текстового файла markdown в HTML-файл тоже является автоматизацией процесса. В это так же входит перемещение файлов из одного места в другое. Когда вы выполняете автоматизацию процесса повторно, то это получается пакетная автоматизация.
Автоматизация по перелкючателю
Автоматизация по переключателю происходит когда процесс запускается по событию. Событие — это что-то, над чем компьютер не имеет прямого контроля, но может реагировать на него.
В реальном мире будильник является классическим примером автоматизации по переключателю. Все автоматы, следующие за конструкцией «Когда…тогда» являются автоматизацией по переключателю.
Я придумал шесть подтипов автоматизации по переключателю: переключатели времени, переключатели состояния, текстовые переключатели, переключатели горячих клавиш, переключатели ключевых слов и внешние переключатели. Я опишу каждый подтип переключателя, с описанием конструкции «когда ... тогда».
Переключатель времени
Автоматизация по переключателю времени — любая активация программы во временном интервале. Это может быть так же просто, как отправить сообщение о предстоящей встрече или просто запустить Skype и сделать встречу возможной.
Опрос каталога новых файлов и выполнение действий над ними — автоматизация по переключателю времени.
Когда наступает определенный временной интервал или дата, тогда выполняется действие.
Переключатель состояния
Автоматизация по переключателю состояния это процесс просмотра системы и выполнения действия на основе изменения состояния системы.
В домашней автоматизации термостат является автоматизацией по переключателю состояния. Когда температура дома достигает определенной точки, термостат запускается или выключает кондиционер.
Когда компьютер находится в определенном состоянии, тогда выполняется действие.
Текстовый переключателя
Автоматизация по текстовому переключателю это особая форма переключателя состояния. Автоматизация по текстовому переключателю следит за вводом с клавиатуры, чтобы определить последовательность введенного текста. Когда обнаруживается определенная последовательность, выполняется соответствующее действие и/или замена текста.
Это отличается от переключателя ключевых слов тем, что этот тип автоматизации не использует специальную область ввода. Любая программа, которая принимает текст, можно автоматизировать по переключателю ввода текста.
Когда пользователь вводит определенную последовательность клавиш в любом месте, тогда текст изменяется и/или выполняется действие.
Переключатель горячих клавиш
Автоматизация по переключателю горячих клавиш это ещë одна специализированная форма переключателя состояния. Автоматизация по переключателю горячих клавиш следит только за определенной комбинацией клавиш, нажатых вместе. Выполнится специальное действие, назначенное на эту комбинацию.
Все текстовые редакторы используют этот тип автоматизации. Когда определенные клавиши нажаты вместе, тогда выполняется определенное действие.
Переключатель ключевых слов
Автоматизация по переключению ключевых слов — автоматизация текстового переключателя в специальной области ввода текста. Так же может использоваться дополнительный ввод для выполнения автоматизации. Дав такое широкое определение, терминал является примером автоматизации по ключевому слову.
Когда определенный текст вводится в специальное поле текста, тогда выполняются действия с или без дополнительного ввода от пользователя.
Внешний переключатель
Автоматизация по внешнему переключателю — это запуск процесса, основанного на получении сигнала вне программы или компьютера. Он не отслеживает, но реагирует на сигнал. Это аналогично клакеру по слайду проектора. Ведущий кликает кликер, чтобы проектор менял слайды.
Внешний переключатель не должен быть устройством, но может быть сервисом. Push-уведомления это приложение автоматизации по внешнему переключателю.
Когда происходит событие программы или компьютера извне, тогда выполняется заданное действие.
Гибридная автоматизация
Гибридная автоматизация представляет собой комбинацию любого из вышеперечисленных типов автоматизации. Гибридная автоматизация, как правило, является самым мощным типом автоматизации, но её часто сложно собрать и обслуживать.
Простейшей формой гибридной автоматизации является последовательная автоматизация: одна автоматизация запускает другую автоматизацию, которая не связана с ней. Это отличается от пакетной автоматизации, использованием различных типов автоматизации.
Программы для автоматизации
Теперь, когда я объяснил типы автоматизации, я дам вам несколько программ, чтобы поразмышлять о каждом типе автоматизации и о том, как вы можете заставить это работать на вас. Это не исчерпывающий список программ для каждого типа автоматизации, а короткий список, для начала.
Автоматизация процессов и пакетная автоматизация
Две отличные программы для автоматизации общих процессов это DropZone и Alfred. Эти две программы позволяют обрабатывать элементы и создавать настройки, которые соответствуют конкретным нуждам. Эти программы также позволяют проводить пакетную обработку действий.



Alfed Worklfows есть для многих автоматических задач. На веб-сайте Packal представлено более 220 рабочих процессов (workflows). Рабочий процесс управления проектами автоматизирует создание новых веб-проектов, запуск серверов и всё, что я добавляю к нему. Это моя рабочая лошадка по автоматизации проектов.
Вы можете увидеть, как основа создана в Alfred Workflows for Advanced Users.



Dropzone поставляется с несколькими предварительно созданными действиями и возможностью добавить что-то ещë. В учебнике Writing Destinations for Dropzone вы увидите, как создать действие, чтобы сжимать любое изображение в меньшую битовую плоскость и преобразовать его в другой тип. Написав сценарий для одного изображения, вы получите автоматическую настройку для пакетной обработки.



TextSoap это автоматизация процессов только для текста. Он позволяет вам изменять текст разными способами: разные регистры, Markdown в HTML или Richtext и настраиваемая очистка текста, созданная с помощью простого метода построения блок-схемы.
В уроке How to Effortlessly Create Markdown With TextSoap показано, как создавать автоматическую обработку текста.
Переключатель времени
Чтобы использовать автоматизацию по времени, у вас должны быть программы, которые знают о времени и могут реагировать на время. Простая программа календаря, наподобие Fantastical хороша, но она не автоматизирует действие. Она создаёт отличные напоминания, но не помогает в работе, которую вам нужно делать.



Поэтому такие программы, как Clockwise и Alfred Cron, делаются для настоящей автоматизации. Эти программы позволяют запускать скрипт в определенный момент времени.
Программу Clockwise могут выбрать новички в программировании. У неё множество встроенных действий наряду с определяемыми пользователем сценариями. Alfred Cron это для продвинутых пользователей.
Урок Use a Mac to Monitor Website Uptime or Other Regular Tasks показывает, как автоматизировать действия по времени с помощью этих приложений.
Переключатель состояния
Существует только одна настоящая программа переключателя состояния для Mac, о которой я знаю: ControlPlane.
ControlPlane работает, отслеживая многие факторы на вашем Mac для определения текущего состояния. При изменении состояния скрипты могут привести автоматизацию Mac в действие. Урок Take Control With ControlPlane показывает, как использовать эту программу для автоматического включения и выключения совместного использования файлов в зависимости от местоположения.
Ограниченная форма переключателя состояния имеется в таких программах, как LiveReload и Hazel. Эти программы известны как автоматизаторы по переключению состояния файлов. Они следят за состоянием определенных файлов. Когда их состояние изменяется (т.е. изменяется по действию сохранения файла), они выполняют заранее определенное действие.



LiveReload перекомпилирует веб-ресурсы. Поэтому, если вы используете Compass, SASS или другие компиляторы в вашем проекте, установите LiveReload для контроля ваших каталогов. Каждый раз, когда вы меняете файлы в этих каталогах, он автоматически перекомпилирует их и перезагружает изменения в вашем браузере.



Хотя LiveReload выполняет определенный тип обработки файлов, Hazel более обобщенный. Он опрашивает предопределённые файлы на большее количество возможных изменений и выполняет действие.
Вы можете настроить Hazel, чтобы оно работало как LiveReload и так далее, хотя Hazel не так отзывчива, как LiveReload для такого вида функциональности из-за своей природы опроса.
Текстовый переключатель
Когда мне нужен текстовые переключатель, я беру TextExpander, чтобы заполнить эту область. В сочетании с PopClip и расширением TextExpander я могу быстро создавать развертывание текста.



Вы можете выбрать текст, который хотите развернуть, и выбрать TextExpander Extension в PopClip.



Установите ключ переключателя. Я использую ;q как расширитель по умолчанию, который я не храню. Теперь, чтобы повторить эту последовательность текста, я могу ввести ;q, и оно будет дополненно. Когда это будет выполнено, удалите его или задайте уникальный текст дополнения для будущего использования.
Используя точку с запятой перед последовательностью букв, вы можете быть уверены, что переключения не произойдёт при обычном наборе. Это хорошая экономия при наборе текста!
Переключатель горячих клавиш
Keyboard Maestro — моё основное приложение переключателя горячих клавиш, а Alfred делает всё остальное.
В сочетании с программой ShortCat, которая позволяет вам выбирать функции интерфейса прямо с клавиатуры, вы можете сделать некоторую интересную автоматизацию.



Например, одно из моих заданий — загрузка видеокурсов в Wistia и правильное форматирование. Я использую действие по горячей клавише в клавиатуре Maestro для создания нового раздела курса.
В приведенном выше диалоговом окне Keyboard Maestro, Cmd + стрелка вверх перемещает в верхнюю часть веб-страницы в Chrome. Shift-Command-Пробел вызывает ShortCat для поиска поля под названием Project Action. Это открывает меню.
Сценарий снова вызывает ShortCat, чтобы выбрать пункт меню в его меню. То, на что у меня обычно уходит несколько движений мыши является лишь одной комбинацией клавиш. В этом и прекрасна автоматизация!
Переключатель по ключевым словам
Чтобы создать переключатель по ключевым словам, я в основном использую Alfred, создавая workflow для необходимых действий. В Alfred workflow я могу использовать любой язык программирования, на котором я хочу действие.
Группа уроков по использованию Alfred поможет вам научиться создавать переключатель по ключевым словам: Alfred for Beginners, Intermediates, Advanced и Alfred Debugging.



LaunchBar также полезен при создании действий, инициируемых по ключевым словам. В версии 5 они должны были сценариями AppleScript.
Любой сценарий AppleScript, размещенный в каталоге ~/Library/Application Support/LaunchBar/Actions/ доступен в LaunchBar как действие по ключевым словам.



В последней 6ой версии LaunchBar добавлена возможность использовать любой язык программирования для создания сценариев и хороший способ объединить всю необходимую информацию.
Внешние переключатели
Keyboard Maestro и Alfred позволяют другим программам, кроме себя, вызывать свои функции с помощью внешнего переключателя.
Клавиатура Maestro пошла дальше и поддерживает внутренний веб-сервер для приема переключателей из любого места в Интернете. У вас может быть компьютер где-то в Интернете, отправляющий событие для переключателя на клавиатуру Maestro на вашем компьютере.



Внешний переключатель Alfred ограничен программой, которая может запускать сценарий AppleScript для ее вызова. Когда вы определяете внешний переключатель, Alfred дает вам код AppleScript для его вызова.
Гибридная автоматизация
Поскольку гибридная автоматизация объединяет в себе множество методов автоматизации, на самом деле не существует ни одного приложения, предназначенного для этой цели.
Как вы можете видеть из моего списка приложений, Alfred находится во многих категориях. Так как Alfred’у легко вызывать себя (в действие), создание гибридной автоматизации очень выполнимо.
Заключение
В этом уроке я объяснил автоматизацию с компьютером и как выполнить её на Mac.
Преобразование workflow для получения преимуществ автоматизации, зависит только вас. Просто думайте: я могу автоматизировать всё, что делалось более двух раз.
- App TrainingAlfred Workflows for BeginnersRichard Guay
- App TrainingAlfred Workflows for IntermediatesRichard Guay
- App TrainingAlfred Workflows for Advanced UsersRichard Guay
- App TrainingWriting Destinations for DropzoneRichard Guay
- App TrainingHow to Effortlessly Create Markdown With TextSoapRichard Guay
- App TrainingTake Control With ControlPlaneRichard Guay
- App TrainingUse a Mac to Monitor Website Uptime or Other Regular TasksRichard Guay
- AlfredAlfred DebuggingRichard Guay