Automatisez la séquence de touches sur Mac

10

Je souhaite automatiser une longue séquence de touches que je dois taper chaque fois que j'utilise un site Web spécifique. Comment puis-je le faire sous Mac OS X. J'ai essayé l'Automator. J'enregistre la séquence, mais quand je l'exécute, j'ai eu cette erreur:

L'action «Watch Me Do» a rencontré une erreur.

Vérifiez les propriétés de l'action et essayez à nouveau d'exécuter le workflow.

Daniel Cukier
la source

Réponses:

13

Pour ce faire, j'ai créé un workflow d'automate avec un objet Run AppleScript avec ce contenu:

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

CA marchait bien pour moi

Daniel Cukier
la source
2
Sur OS X El Capitan, j'ai eu une erreur lors de l'inclusion des deux premières et dernières lignes. Les supprimer a fait fonctionner le script correctement.
Eneko Alonso
3

En plus d'écrire votre propre script, Keyboard Maestro peut être utilisé pour composer des séquences de touches comme celle-ci.

Matthew Shanley
la source
J'ai utilisé Keyboard Maestro - un excellent produit et un excellent support!
JESii
2

Vous pouvez créer une macro avec une application comme Keyboard Maestro , iKey ou QuicKeys . Beaucoup d'entre eux prennent également en charge quelque chose comme les macros rapides de Keyboard Maestro. Vous pouvez appuyer sur ⌃F1 pour démarrer ou arrêter l'enregistrement d'une macro, puis la lire avec ⌥F1.

Vous pouvez également émuler des pressions de touches avec AppleScript. Le retard au démarrage n'est pas nécessaire si le script est exécuté avec 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

La keystrokecommande ne peut être utilisée que pour insérer des caractères inclus dans la disposition de clavier actuelle. Si le texte est suffisamment long, il y a également un délai visible lors de son insertion.

Une autre façon d'insérer du texte consiste à utiliser le presse-papiers:

set the clipboard to "aa"
delay 0.05
tell application "System Events" to keystroke "v" using command down
Lri
la source
0

Vous voudrez peut-être également regarder iKey et QuicKeys . Je ne pense pas que l'un ou l'autre fera plus que Automator / AppleScript dans ce cas, mais ils pourraient être utiles autrement.

wfaulk
la source
0

Malheureusement, vous ne pouvez pas ajouter de fonction de clic de souris dans aucun de ces éléments ou dans le flux de travail. Même applescript a du mal à implémenter un clic de souris dans une application.

S Louie
la source