Автоматизировать последовательность нажатий клавиш в Mac

10

Я хочу автоматизировать длинную последовательность нажатий клавиш, которую мне приходится вводить каждый раз, когда я пользуюсь определенным веб-сайтом. Как я могу сделать это в Mac OS X. Я попробовал Automator. Я записываю последовательность, но когда я ее запускаю, я получаю эту ошибку:

В действии «Watch Me Do» произошла ошибка.

Проверьте свойства действия и попробуйте снова запустить рабочий процесс.

Даниэль Кукье
источник

Ответы:

14

Для этого я создал рабочий процесс автоматизатора с объектом Run AppleScript с таким содержимым:

on run {input, parameters}

tell application "Google Chrome" to activate

tell application "System Events"
    keystroke "A"
    keystroke "B"
    keystroke "C"
end tell

return input
 end run

Это работало нормально для меня

Даниэль Кукье
источник
2
На OS X El Capitan я получил ошибку при включении первой и последней двух строк. Удаление их заставило скрипт работать нормально.
Энеко Алонсо
3

В дополнение к написанию собственного сценария Keyboard Maestro можно использовать для составления последовательности клавиш, подобной этой.

Мэтью Шенли
источник
Я использовал Keyboard Maestro - отличный продукт и отличная поддержка!
JESii
2

Вы можете создать макрос с помощью приложения, такого как Keyboard Maestro , iKey или QuicKeys . Многие из них также поддерживают что-то вроде быстрых макросов в Keyboard Maestro. Вы можете нажать ⌃F1, чтобы начать или остановить запись макроса, а затем воспроизвести его с помощью ⌥F1.

Вы также можете эмулировать нажатия клавиш с помощью AppleScript. Задержка при запуске не требуется, если скрипт запускается с FastScripts .

delay 0.5 -- if the script is run with a shortcut that has modifier keys
activate application "TextEdit"
tell application "System Events"
    keystroke "aa"
    key code 123 using {shift down, command down}
end tell

keystrokeКоманда может быть использована только для вставки символов, которые включены в текущей раскладке клавиатуры. Если текст достаточно длинный, при вставке также наблюдается видимая задержка.

Еще один способ вставить текст - использовать буфер обмена:

set the clipboard to "aa"
delay 0.05
tell application "System Events" to keystroke "v" using command down
LRI
источник
0

Вы также можете посмотреть на iKey и QuicKeys . Я не думаю, что любой из них сделает больше, чем Automator / AppleScript в этом случае, но в противном случае они могут быть полезны.

wfaulk
источник
0

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

С Луи
источник