Diccionarios en AppleScript

Ya hemos visto en artículos anteriores que AppleScript nos permite realizar ciertas operaciones sobre el sistema operativo y, en algunas ocasiones, también podemos utilizar o manipular algunas aplicaciones a través de AppleScript. Esto se consigue gracias a los diccionarios de AppleScript.

Los diccionarios de AppleScript son manuales que indican al motor de AppleScript cómo poder interactuar con una aplicación utilizando AppleScript.

Estos diccionarios son creados por los propios desarrolladores de las aplicaciones para MacOS X. Las aplicaciones más comunes y todas las de Apple para MacOS X poseen sus diccionarios.

Para ver qué diccionarios tenemos disponible en nuestro equipo debemos abrir la aplicación del Editor de scripts y en el menú Archivo encontraremos la opción Abrir diccionario.

Al pulsar esa opción se nos abrirá un cuadro de diálogo que nos permite abrir un diccionario para consultar su documentación para poder escribir nuestro script de AppleScript.

En esa lista encontraremos aplicaciones ya conocidas como Automator, Finder, Pages, Keynote, Microsoft Word, xCode, System events o Safari.

Todos los diccionarios suelen estar escritos en inglés ya que es el idioma oficial para AppleScript.

Explorando un diccionario

Al abrir un diccionario nos encontraremos una barra de herramientas, una zona de selección de categorías (identificada por VoiceOver como Explorador) y una zona de lectura (identificada por VoiceOver como Contenido web).

En el explorador se encuentran las suites de comandos y los tipos y elementos disponibles. en el contenido web se puede leer la documentación del diccionario o del elemento seleccionado en el Explorador.

En la barra de herramientas encontraremos elementos para buscar términos, cambiar el tamaño de letra, cambiar el lenguaje de programación para consultar el diccionario o cambiar el modo de visualización del explorador.

Un pequeño ejemplo con Finder

El Finder es una de las aplicaciones más poderosas de MacOS X y su diccionario es muy interesante. Buscando entre sus comandos y propiedades podemos crear sin demasiada complicación un script que nos permita expulsar todas las unidades y memorias USB que estén conectadas a nuestro ordenador en ese momento. El código sería algo así:


tell application "Finder"
eject (disks whose ejectable is true)
end tell

Mejorando el ejercicio

Aunque el script anterior puede ser muy útil es mejor que el usuario pueda seleccionar qué unidad expulsar. Con los conocimientos que ya hemos visto en artículos anteriores podemos hacer ese script.

A continuación veremos un código inicial no terminado para dar pistas de cómo se podría hacer ese script.


tell application "Finder"
set unidades to (disks whose ejectable is true) as text
choose from list unidades with title "Expulsar una unidad" with prompt "Selecciona la unidad que quieras expulsar" OK button name "Expulsar"
end tell

Puedes compartir tu propuesta de solución con otros lectores en los comentarios de este artículo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.