{"id":587,"date":"2018-09-14T09:00:14","date_gmt":"2018-09-14T08:00:14","guid":{"rendered":"http:\/\/www.programaraciegas.net\/?p=587"},"modified":"2020-02-04T12:04:19","modified_gmt":"2020-02-04T11:04:19","slug":"diccionarios-en-applescript","status":"publish","type":"post","link":"https:\/\/programaraciegas.net\/?p=587","title":{"rendered":"Diccionarios en AppleScript"},"content":{"rendered":"<p>Ya hemos visto en art&iacute;culos anteriores que AppleScript nos permite realizar ciertas operaciones sobre el sistema operativo y, en algunas ocasiones, tambi&eacute;n podemos utilizar o manipular algunas aplicaciones a trav&eacute;s de AppleScript. Esto se consigue gracias a los diccionarios de AppleScript.<\/p>\n<p><!--more--><\/p>\n<p>Los diccionarios de AppleScript son manuales que indican al motor de AppleScript c&oacute;mo poder interactuar con una aplicaci&oacute;n utilizando AppleScript.<\/p>\n<p>Estos diccionarios son creados por los propios desarrolladores de las aplicaciones para MacOS X. Las aplicaciones m&aacute;s comunes y todas las de Apple para MacOS X poseen sus diccionarios.<\/p>\n<p>Para ver qu&eacute; diccionarios tenemos disponible en nuestro equipo debemos abrir la aplicaci&oacute;n del <em>Editor de scripts<\/em> y en el men&uacute; <em>Archivo<\/em> encontraremos la opci&oacute;n <strong>Abrir diccionario<\/strong>.<\/p>\n<p>Al pulsar esa opci&oacute;n se nos abrir&aacute; un cuadro de di&aacute;logo que nos permite abrir un diccionario para consultar su documentaci&oacute;n para poder escribir nuestro script de AppleScript.<\/p>\n<p>En esa lista encontraremos aplicaciones ya conocidas como Automator, Finder, Pages, Keynote, Microsoft Word, xCode, System events o Safari.<\/p>\n<p>Todos los diccionarios suelen estar escritos en ingl&eacute;s ya que es el idioma oficial para AppleScript.<\/p>\n<h2>Explorando un diccionario<\/h2>\n<p>Al abrir un diccionario nos encontraremos una barra de herramientas, una zona de selecci&oacute;n de categor&iacute;as (identificada por VoiceOver como <em>Explorador<\/em>) y una zona de lectura (identificada por VoiceOver como <em>Contenido web<\/em>).<\/p>\n<p>En el <em>explorador<\/em> se encuentran las suites de comandos y los tipos y elementos disponibles. en el <em>contenido web<\/em> se puede leer la documentaci&oacute;n del diccionario o del elemento seleccionado en el <em>Explorador<\/em>.<\/p>\n<p>En la barra de herramientas encontraremos elementos para buscar t&eacute;rminos, cambiar el tama&ntilde;o de letra, cambiar el lenguaje de programaci&oacute;n para consultar el diccionario o cambiar el modo de visualizaci&oacute;n del explorador.<\/p>\n<h2>Un peque&ntilde;o ejemplo con Finder<\/h2>\n<p>El Finder es una de las aplicaciones m&aacute;s poderosas de MacOS X y su diccionario es muy interesante. Buscando entre sus comandos y propiedades podemos crear sin demasiada complicaci&oacute;n un script que nos permita expulsar todas las unidades y memorias USB que est&eacute;n conectadas a nuestro ordenador en ese momento. El c&oacute;digo ser&iacute;a algo as&iacute;:<\/p>\n<p><code><br \/>\ntell application \"Finder\"<br \/>\n\teject (disks whose ejectable is true)<br \/>\n\tend tell<br \/>\n<\/code><\/p>\n<h2>Mejorando el ejercicio<\/h2>\n<p>Aunque el script anterior puede ser muy &uacute;til es mejor que el usuario pueda seleccionar qu&eacute; unidad expulsar. Con los conocimientos que ya hemos visto en art&iacute;culos anteriores podemos hacer ese script.<\/p>\n<p>A continuaci&oacute;n veremos un c&oacute;digo inicial no terminado para dar pistas de c&oacute;mo se podr&iacute;a hacer ese script.<\/p>\n<p><code><br \/>\ntell application \"Finder\"<br \/>\n\tset unidades to (disks whose ejectable is true) as text<br \/>\n\tchoose from list unidades with title \"Expulsar una unidad\" with prompt \"Selecciona la unidad que quieras expulsar\" OK button name \"Expulsar\"<br \/>\nend tell<br \/>\n<\/code><\/p>\n<p>Puedes compartir tu propuesta de soluci&oacute;n con otros lectores en los comentarios de este art&iacute;culo.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ya hemos visto en art&iacute;culos anteriores que AppleScript nos permite realizar ciertas operaciones sobre el sistema operativo y, en algunas ocasiones, tambi&eacute;n podemos utilizar o manipular algunas aplicaciones a trav&eacute;s de AppleScript. Esto se consigue gracias a los diccionarios de AppleScript.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[80,6],"tags":[83,310,309,308,98],"class_list":["post-587","post","type-post","status-publish","format-standard","hentry","category-applescript","category-programacion","tag-applescript-2","tag-diccionarios","tag-eject","tag-expulsar","tag-finder"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/posts\/587","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=587"}],"version-history":[{"count":0,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/posts\/587\/revisions"}],"wp:attachment":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=587"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=587"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=587"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}