1930 0

Hacer Applescript Combo es obviar el propio lenguaje de Applescript para trabajar con muy pocas órdenes, muy específicas, pero que permiten hacer muchas cosas.

Básicamente se trata de no complicarse la existencia con el muy amplio y profundo diccionario de Applescript y trabajar directamente con el interfaz de las aplicaciones siguiendo una regla muy básica y sencilla:

Si se puede hacer con atajos de teclado, se puede escriptar

Realmente, utilizando la técnica Applescript Combo, lo que transmitimos a la aplicación son secuencias de atajos de teclado de todo tipo que nos permiten crear un combo de acciones.

Hay muy pocas sentencias que aprender en Applescript Combo: básicamente solo hay 2, la primera para indicar que queremos escribir algo:

 tell application "System Events" to keystroke "escribir algo"

con una variante, para escribir símbolos ASCII:

tell application "System Events" to keystroke (ASCII character 31)

y la segunda, para pulsar teclas:

 tell application "System Events" to key code 48

Esta segunda tiene una serie de variaciones al respecto del uso de teclas modificadoras, por ejemplo:

 tell application "System Events" to key code 28 using {option down, shift down}

Si nos fijamos, entre los {} tenemos las teclas modificadoras a pulsar:

  • option (opción o ⌥)
  • shift (mayúsculas o ⇧)
  • command (comando o ⌘)
  • control (ctrl o ⌃)

Applescript Combo tiene una ventaja adicional: permite hacer llamadas a Aplicaciones que no tienen soporte de Applescript y forzarlas a ejecutar órdenes a través de los atajos de teclado.

Crear Applescripts Combo es muy fácil: solo tienes que apuntar los atajos de teclado que tienes que realizar para completar la acción que quieres realizar para a continuación trasladarlos con las sentencias de arriba al editor de scripts para crear tu Applescript.

Trucos y recursos

Imagina que quieres crear un Applescript Combo en el que abres Safari, le dices que cree tres pestañas y ponga Safari a pantalla completa. En el siguiente Applescript vamos a ver cómo llamar a una aplicación, como establecer una repetición de comandos y evidentemente, el uso de las pulsaciones de teclado.

tell application “Safari” to activate

repeat 3 times

tell application “System Events” to key code 17 using {command down}

end repeat

tell application “System Events” to key code 3 using {command down, control down}

Si necesitas, en algún momento, establecer una pausa entre acciones, por ejemplo para esperar que se cargue algo, la línea de código Applescript es:

pause X

donde X es la cantidad de segundos que necesitas de pausa en el script

Y ahora los recursos:

Para saber qué teclas tienes que pulsar usando key code tienes este enlace donde se referencian la mayoría de ellas. Si lo que necesitas es ASCII, lo tienes aquí. Y si necesitas pulsar la barra espaciadora1 puedes usar:

tell application "System Events" to keystroke space

Notas

  1. Que es el equivalente a hacer clic cuando trabajas con un interfaz y el teclado
In this article


Join the Conversation