Iniciación a AppleScript

Apple incluye dentro de su sistema operativo para ordenadores de escritorio y portátiles un lenguaje de scripts conocido como AppleScript. Este lenguaje nos permite crear tareas y pequeños programas para automatizar rutinas o mejorar el funcionamiento de algunas aplicaciones.

En la documentación de AppleScript podemos encontrar el siguiente texto descriptivo:

AppleScript es un potente y versátil lenguaje para la creación de scripts que se incluye en Mac OS X. Puede utilizar AppleScript para crear funciones rápidas, automatizar tareas repetitivas o incluso crear aplicaciones personalizadas que le ahorren gran cantidad de tiempo. AppleScript le permite controlar las aplicaciones que admiten el uso de scripts.

Un script de AppleScript consiste en una serie de comandos en inglés que realizan acciones sobre objetos. Ejemplos de acciones: open, close, get the name of (es decir, abrir, cerrar, obtener el nombre de). Los objetos pueden ser, por ejemplo, una aplicación, una ventana o un ajuste de preferencias.

Un script puede controlar una o más aplicaciones. Para que una aplicación permita el uso de scripts, debe definir los términos que se pueden emplear en los scripts. Mac OS X incluye varias aplicaciones que aceptan scripts.

Herramientas para desarrollar en AppleScript

Mac OSX incluye una aplicación para editar, compilar y depurar los scripts que desarrollemos. Esta aplicación se llama Editor AppleScript. En la documentación de la aplicación encontramos la siguiente definición:

Editor AppleScript es una aplicación para crear scripts muy fácil de utilizar que permite leer, escribir, grabar y guardar scripts de AppleScript.

Estas son algunas características de Editor AppleScript:

  • Ofrece una interfaz unificada y fácil de usar
  • Le permite buscar y reemplazar en el texto del script
  • Realiza un ajuste automático de las sentencias de gran longitud
  • Le permite deshacer varias acciones
  • Ofrece scripts de menú de función rápida para agilizar la redacción de scripts
  • Ofrece soporte para los servicios de las aplicaciones
  • Le permite acceder a scripts de aplicación mediante la paleta Biblioteca.
  • Ofrece un Asistente para Scripts que le ayuda a completar las sentencias
  • Ofrece el historial de resultados y el historial de registro de eventos para que pueda examinar qué ocurre en un script

Editor AppleScript está incluido en Mac OSX. Está situado en la carpeta Utilidades, de la carpeta Aplicaciones del disco duro.

Conceptos básicos de AppleScript

Cuando se ejecuta un script, AppleScript envía eventos Apple al sistema o a las aplicaciones que llevan a cabo los comandos. Estos eventos Apple son mensajes enviados a objetos del sistema o de aplicaciones instaladas en el sistema. Las aplicaciones o el sistema devolverán un resultado al script. Por ejemplo, si un script envía una petición a una aplicación para obtener el nombre de un objeto, la aplicación devuelve el nombre o un mensaje de error si no pudo realizar la petición.

No es necesario conocer los eventos Apple en profundidad ya que el editor AppleScript y sus funciones nos simplifican la tarea.

Applets

Un script que se guarda como aplicación se llama «aplicación AppleScript» o «applet». Los applets se ejecutan automáticamente al abrirse y realizan los comandos del script. Los applets pueden estar formados por solo un par de comandos, o ser aplicaciones más complejas.

Los applets pueden guardarse como editables o como solo ejecutables. Un applet editable sigue conteniendo el texto del script, por lo que puede editarse y volver a compilarse en cualquier momento.
Al guarda un script como solo ejecutable, la parte de texto editable se elimina y el archivo ya no puede modificarse ni volver a compilarse.

Ejemplo simple

Vamos a realizar la primera aplicación que todo desarrollador hace al aprender un lenguaje de programación, el conocido Hola mundo!. Abre el editor AppleScript y pega el siguiente código de ejemplo:


(*
Ejemplo 1:
Hola Mundo
*)
on run
say "Hola mundo!"
end run

Ahora ejecuta nuestro script bien pulsando la combinación Comando+R o usando la opción Ejecutar del menú Script del editor AppleScript. El sistema verbalizará el mensaje Hola mundo! utilizando la voz del sistema.