Una introducción a AppleScript

Apple no es famosa por permitir la intrusión en sus plataformas, el entorno iOS cuidadosamente protegido es un ejemplo. Puedes personalizarlo, pero tienes que asumir ciertos riesgos, como los que conlleva el jailbreak. Sin embargo, Mac OS X es un escenario ligeramente diferente. Mac es una sofisticada compilación de Unix que trabaja al unísono con la magia de Apple. Hay acciones personalizadas que puede hacer que su Mac haga que gran parte de su trabajo sea absolutamente libre de problemas, todo con el clic de un botón. Para ayudar a lograr esto, Apple creó AppleScript en 1993. Donde permitieron a los usuarios automatizar funciones básicas en una Mac hasta que se estableciera un cierto nivel de automatización. Si desea personalizar su experiencia Mac a través de secuencias de comandos básicas, aquí es cómo.

AppleScript - Editor

Tenga en cuenta que solo podemos presentarle el lenguaje de secuencias de comandos automatizado de Apple y cómo usarlo. No podemos convertirlos en expertos en eso. Eso, tendrá que manejarlo por su cuenta, pero si lo hace, su mundo de la informática realmente cambia y esto no es exagerado, literalmente cambia. Imagina la miríada de tareas que tienes que hacer repetidamente, una aflicción que sufren todos los sistemas operativos, desaparecida con un solo clic. Puede hacer cualquier cosa, desde ordenar iconos en su escritorio, hasta registrar horas, hacer una entrada en Excel y enviarla por correo electrónico. Todo con el clic de un botón. Ese es un poder que definitivamente deberías aprender a manejar.

Intro

AppleScript, a diferencia del complicado Objective C, y el menos complicado pero aún no tan fácil Swift, es un lenguaje de programación que procesa el inglés normal. Este proceso no requerirá una maestría en programación. Todo lo que necesita saber es cómo dar instrucciones a una máquina. Por ejemplo:

tell application "Finder"
display dialog "Hello World"
end tell

AppleScript - HelloWorld

Sintaxis

Con toda la programación, hay una convención. Eso es para decirle a un programa cuándo comenzar, qué comenzar, qué hacer una vez que haya comenzado y cuándo terminar. Entonces la cuerda se convierte en [command] [target type] [target name] [action] [end command]. Esta es una representación demasiado simplista, pero si está escribiendo código y algo sale mal, es seguro asumir que al código le falta uno o más de los parámetros anteriores.

O, en términos más simples, hay un «bloque de indicación», en el que le está «diciendo» a la aplicación lo que quiere de ella. Al igual que el código anterior le está diciendo al Finder que muestre una ventana de diálogo que contenga las palabras «Hola mundo» (o cualquier palabra que haya decidido probar). Una vez que haya terminado con el comando, escriba «end tell». Como dijimos, es una máquina, así que tienes que decirle dónde terminar o se negará a compilar (compilar es el acto de convertir el código en un ejecutable).

Compilando

Presione compilar cuando haya terminado de escribir. Si hay algún error de sintaxis (en su mayoría errores tipográficos), le dirá cuál es el error (lo mejor que pueda) y si no hay ningún error, su código se formateará y coloreará automáticamente.

AppleScript - Formateado

Corriendo

Después de compilar, presione Ejecutar y habrá terminado. Dependiendo de su acción de seguimiento, se realizará una entrada de registro. Como se muestra a continuación para cualquiera de los escenarios de nuestro ejemplo. «Regresar» es el acto de llevar su entrada a la máquina. Si se siente cómodo con esto, démosle un paso adelante y declaremos variables.

AppleScript - Ok

AppleScript: cancelado

Variables

Si está familiarizado con la programación, incluso a nivel cosmético, probablemente esté familiarizado con las variables. Para aquellos de nosotros que no estamos familiarizados, las variables son un método simple de comprimir mucha información en una sola cadena que es fácil de manipular. La forma de hacerlo varía de un idioma a otro; con AppleScript, puede adoptar el siguiente enfoque.

set varExample to "Hello World"
tell application "Finder"
display dialog varExample
end tell

AppleScript - VarExample

Aquí, «varExample» es el nombre que le dimos a nuestra variable declarada. Ahora, si necesitamos imprimir Hello World nuevamente en este script, solo necesitaremos llamar a varExample y no tendremos que escribir todo ese código nuevamente. Se puede asignar el resultado de cualquier código, complicado o no, a una variable y llamarlo cuando sea necesario. Como puede ver, compilar el código anterior arrojó los mismos resultados que el anterior. Las nuevas palabras, «set» y «to» implican que estamos asignando valores básicamente set [this] a «[that]”. Es así de sencillo. Los programadores experimentados apreciarán que no es necesario declarar la variable «tipo», porque AppleScript puede administrar eso por sí solo. Tenga en cuenta que no puede haber espacios en los nombres de las variables, o el compilador lo considerará un comando.

Además, si escribe algo después de un guión / guión doble «-«, el compilador lo considerará un comentario y lo ignorará. Esto es útil porque luego puede dejar notas sobre lo que está haciendo. Los necesitará si su código se va a volver complejo.

Puede ejecutar sus experimentos con las variables a su gusto, aquí hay un ejemplo que puede copiar y pegar (o probar el suyo si lo desea).

--Numeric/Integer Variables
set theFirstNumber to 1
set the theSecondNumber to 2
--Variable Operations
set theAnswer to (theFirstNumber + theSecondNumber)
set theAnswer to (theAnswer + 1)
--String Variables
set theString to "3+2+1="
--Display Dialog
tell application "Finder"
display dialog theString & theAnswer
end tell

AppleScript: compilación

Este código no logra nada más que algunas pantallas elegantes y la aritmética más básica, es solo un ejemplo para ayudar a ilustrar las cosas que puede lograr con él.

Diccionario

Ahora, todo lo anterior es solo para ayudarlo a familiarizarse con el medio ambiente. Una vez que hayas hecho eso, llegaremos a la parte difícil. Es familiarizarse con los diccionarios. AppleScript tiene una variedad de comandos que se aplican a cualquier programa o elemento dentro de OS X, sin embargo, los desarrolladores de cada aplicación deben agregar soporte completo de AppleScript a sus aplicaciones. Para ello, escriben manuales sencillos sobre cómo comunicarse con sus aplicaciones. Estos manuales se denominan «Diccionarios». Vaya a Archivo y luego Abrir diccionario. Aquí, verá una lista de todas las aplicaciones instaladas (excepto las aplicaciones de Windows que se ejecutan a través de contenedores) que admiten AppleScript. Haga clic en cualquier aplicación y verá una lista de comandos de personalización y cómo usarlos. Vamos a abrir Evernote como ejemplo. Puede ver todos los comandos que admite.

AppleScript - Diccionario

AppleScript - Evernote

Personalización del editor AppleScript

Si mira «AppleScript Editor» en el menú de archivo y hace clic en Preferencias, encontrará una lista personalizable de todos los colores y formatos posibles para su Apple Script. El formato es solo para su información, no es importante para la secuencia de comandos real.

AppleScript - Opciones de formato

Conclusión

Para evitar sobrecargar a los usuarios, terminaremos esta instrucción aquí, para que pueda familiarizarse con la herramienta y jugar con algunas opciones. Continúe revisando, ya que pronto le daremos el siguiente paso sobre cómo crear scripts personalizados. Háganos saber cómo fue su experiencia sonando en los comentarios.