Simular atajos de teclado y pulsaciones de teclas en MacOS con AppleScript

En el sistema operativo MacOS se suele tener un buen acceso a la funcionalidad de las aplicaciones a través del teclado ya que, por norma, las aplicaciones permiten el uso de atajos de teclado.

La gestión de los atajos de teclado se realiza desde el sistema operativo por lo que es posible utilizar estos atajos de teclado para poder crear scripts de AppleScript específicos para una aplicación y crear nuestras propias personalizaciones de uso de una aplicación utilizando nuestros propios scripts de AppleScript

Esto también permite que una aplicación no compatible con AppleScript pueda ser manipulada por un script utilizando los propios elementos y controles de interfaz de la aplicación no compatible.

La aplicación System Events

La aplicación System Events es un servicio del sistema operativo que permite realizar ciertas operaciones a otras aplicaciones y programas en ejecución. System Events no tiene interfaz de usuario por lo que hay que utilizarlo a través de otra aplicación o un script de AppleScript

Con System events podemos controlar el teclado, el ratón, el volumen de nuestro Macbook y muchas cosas más. Veremos en más detalles a System Events en otros artículos.

Dentro del diccionario de System Events para AppleScript se encuentra el comando keystroke el cual nos permite simular una pulsación de teclas desde nuestro script.

El comando keystroke para ser utilizado sobre una aplicación requiere que dicha aplicación esté siendo ejecutada en ese momento. Pero si el comando es un atajo de teclado general de MacOS entonces el comando keystroke puede ser utilizado sin ningún requisito previo.

Para el comando keystroke debemos indicar qué teclas queremos pulsar pero hay que identificar entre teclas alfanuméricas y teclas modificadoras. Las teclas modificadoras son la tecla de mayúsculas, comando, control, alt, etc.

La forma de usar el comando keystroke es la siguiente:


tell application "System Events" to keystroke "letra a pulsar" using teclas modificadoras

También podemos utilizar el código numérico de la tecla en lugar de su representación literal. Su sintaxis es la siguiente:


tell application "System Events" to key code número de la tecla using teclas modificadoras

Unos ejemplos simples

En un editor de textos vamos a escribir la frase Hola mundo simulando las pulsaciones de teclado. El código es:


tell application "System Events" to keystroke "Hola mundo!"

Vamos a enviar el atajo de teclado Comando+n para abrir una nueva ventana en la aplicación que esté activa en ese momento. El código es el siguiente:


tell application "System Events" to keystroke "n" using command down

Participación en TerritoriMac sobre evento de educación de Apple en Abril de 2018

Tras el evento sobre educación realizado por Apple el pasado abril todos los medios de noticias sobre tecnología se hicieron eco de las novedades de la compaña de la manzana para los colegios.

El portal Territorimac también ha aportado su visión del evento en su nuevo formato de vídeo.

En esta nueva etapa en Territorimac se invita a diversos expertos y profesionales para aportar opinión e información sobre un tema y crear un vídeo con toda la información para ser difundido a través del canal de Territorimac en Youtube

Para esta ocasión fui invitado para aportar información sobre las implicaciones del evento en cuanto a accesibilidad de los productos de Apple.

Puedes ver el vídeo sobre Opinión del iPad 2018 con Apple Pencil en el canal de Youtube de Territorimac

Participación en el programa de los audiojuegos

Durante el mes de Mayo de 2018 fui invitado a participar en el El programa de los audiojuegos para compartir la visión sobre juegos accesibles y audiojuegos desde el punto de vista de un desarrollador de software.

El programa de los audiojuegos es un programa de radio de la emisora RadioGeneral.com en el que se tratan temas sobre ocio electrónico para personas ciegas.

Durante la grabación del programa tratamos tantos temas que superamos el tiempo oficial de emisión por lo que hubo que publicar dos versiones del programa. Podeis escuchar la versión reducida del programa de radio o escuchar la versión completa del programa de radio

Podeis escuchar todos sus programas desde el Tumblr del programa de los audiojuegos

Estudia y aprende con Accessible flash cards para iOS

Hoy se ha publicado la séptima aplicación para iPhone e iPad de Tyflos accessible software y la primera aplicación de caracter educativo. Esta aplicación se llama Accessible flash cards

Las flash cards consisten en un método de estudio basado en la memorización de términos y sus definiciones a través de sesiones de entrenamiento.

Aunque la aplicación no incluye ninguna colección por defecto de tarjetas es muy sencillo crear colecciones para mejorar un idioma, memorizar atajos de teclado, capitales del mundo, conocimientos sobre química y mucho más. Además puedes compartir tus colecciones con amigos usando la opción de exportar dentro de los ajustes de la aplicación.

Como todas las aplicaciones de Tyflos accessible software se ha diseñado incluyendo criterios de diseño universal y es accesible y compatible con los distintos productos de apoyo de Apple iOS, el sistema operativo para iPhone e iPad.

Aunque el título de la aplicación está en inglés la interfaz de toda la aplicación está en castellano e inglés.

Puedes descargar Accessible flash cards desde la AppStore de Apple.

Conoce el nuevo portal web de Tyflos accessible Software

El proyecto Tyflos Accessible Software nació a finales del año 2010 teniendo presencia principalmente en la plataforma iOS para dispositivos móviles de Apple.

Con el comienzo del año 2018 Tyflos Accessible Software salta a más plataformas comenzando por la más universal: la Web.

El portal web de Tyflos Accessible Software nace para crear un punto de información y contacto entre los usuarios y los proyectos de Tyflos Accessible Software y como punto de origen para futuros proyectos que proporcionarán una interfaz web u otros proyectos para otras plataformas pero que requieren de servicios externos como una Nube de información.

Visita el portal web de Tyflos Accessible Software y conocenos un poco mejor.

Convertir un AppleScript en una aplicación para MacOS

AppleScript permite a cualquier usuario de MacOS realizar pequeñas utilidades de forma rápida y sencilla pero el resultado sigue siendo un script que requiere de una aplicación para ser ejecutado. Pero esto no es del todo cierto

El Editor de scripts que ofrece Apple nos permite convertir un script de AppleScript en una aplicación para MacOS.

Un pequeño ejemplo para empezar

Para continuar vamos a partir de un pequeño ejemplo de script que sólo mostrará una alerta por pantalla. El código es el siguiente:


on run
display alert "Esto es un mensaje de prueba."
end run

Una vez escrito nuestro script y tras haberlo guardado con un nombre apropiado es el momento de convertirlo en aplicación.

Exportando un AppleScript como aplicación

En el menú Archivo de la barra de menú del Editor de scripts encontramos la opción de Exportar ….

Al activar la opción de Exportar … aparecerá un cuadro de diálogo para exportar nuestro script. Nos solicitará un nombre, una carpeta de destino y un formato. Ese campo formato es el que nos interesa.

Como formato podremos exportar a script, paquete de scripts, texto y aplicación. Es el formato aplicación el que nos interesa.

Dependiendo de la versión de MacOS que estemos ejecutando el campo formato también estará disponible en el cuadro de diálogo para guardar nuestro script.