Cómo usar AppleScript

Imagen de Natasha Remarchuk desde Icons8

Alguna vez se te habrá pasado por la cabeza que el Mac realice, automáticamente, un conjunto de tareas manuales repetitivas que conllevan tiempo y recordar los pasos a dar, con la posibilidad de errar en algún punto del proceso. Apple proporciona 2 herramientas de automatización: Automator y AppleScript. Veamos cómo usar AppleScript para que sea el Mac quien ejecute esos procesos de forma automática.

¿Qué es AppleScript?

AppleScript fue es un lenguaje de programación de scripts que permite controlar el Mac, habilitando la comunicación e interactuación entre las aplicaciones que tengas instaladas.

Gracias a él podemos hacer infinidad de cosas:

  • generar facturas en pdf, enviarlas a sus destinatarios por correo electrónico y guardarlas en disco.
  • alterar el tamaño y tipo de una imagen.
  • generar un recordatorio vinculado a un correo electrónico.

Activando AppleScript

AppleScript necesita 2 cosas para funcionar: algún script que ejecutar (el Mac ya dispone de algunos “de fábrica”) y alguna manera de invocar dicho script para que se ejecute.

Para invocar un script vamos a hacer aparecer el menú de scripts en la barra de menús del Mac. Para ello:

  1. Buscamos la app "Editor de Scripts” y la ejecutamos.
  2. En la ventana de diálogo que aparece seleccionamos “Nuevo documento”. Entraremos en una especie de programa de edición de textos.
  3. Elegimos la opción Editor de Scripts → Preferencias, y en la ventana que se nos abre marcamos la casilla “Mostrar el menú script en la barra de menús”.
  4. Puedes cerrar la aplicación de “Editor deScripts”

Si has seguido todos estos pasos, en la barra de menú del Mac debe aparecer un nuevo icono:

Desplegando un script

Un script no es más que un archivo que contiene texto que es interpretado por tu Mac, y todo script debe estar alojado en algún sitio específico para que puedas tenerlo disponible desde el icono que acabamos de activar.

En la aplicación de Mail, lo que aparece desde el menú de scripts es aquello que puedo ejecutar estando en dicha aplicación (es decir, dependiendo del contexto podemos ejecutar unos u otros scripts).

Todos los scripts -ver captura de imagen- ejecutables desde Mail los creó una aplicación llamada DEVONthink, pero el último, “Create reminder from mail”, lo creé yo (puedes ver el artículo en el que explico su creación, descargarlo y usarlo libremente).

Para que aparezca en el contexto adecuado dicho script, éste debe estar en una carpeta concreta. La carpeta principal de scripts está en \Biblioteca\Scripts y dentro de ésta se organizan el resto.

Hay una denominada “Applications”, y dentro de ésta otra llamada “Mail”, donde se disponen todos los scripts ejecutables desde la aplicación de Mail de _Apple, _y uno de ellos es el que te proporciono en el artículo anteriormente referido.

Simplemente debes ubicar el archivo de script en esta carpeta para que te aparezca como script disponible desde la aplicación Mail.

Como habrás podido deducir, “Applications” contiene las carpetas de las aplicaciones desde las que puedes lanzar sus scripts específicos.

La carpeta “Folder actions scripts” es la contenedora de las acciones de carpeta, una de las potentes funciones de automatización que pueden indicarle al sistema que supervise una carpeta y ejecute automáticamente un flujo de trabajo de Automator, AppleScript o secuencia de comandos de shell cuando se agreguen o eliminen elementos de la carpeta.

La capacidad de hacer automáticamente prácticamente cualquier cosa a medida que se agregan o eliminan archivos de carpetas puede suponer un gran ahorro de tiempo en cualquier flujo de trabajo.

Resumiendo

Los dos sistemas de automatización de Apple son un gran aliado a la hora de realizar infinidad de tareas repetitivas.

Si bien AppleScript requiere de cierto tiempo de aprendizaje, Automator no requiere de casi esfuerzo, puesto que no necesita programación, si bien no deja de ser un entorno agradable que por debajo usa AppleScript.

Espero que con esta guía hayas podido entender cómo usar AppleScript y que esta sea una primera piedra para ir recabando o construyendo automatizaciones, siendo , así, algo más productivo.