Artículos etiquetados "Apple"

Truco: Pseudo-Putty escondido en Mac

Truco: Pseudo-Putty escondido en Mac

El artículo de hoy trata sobre un sencillísimo truco que viene como anillo al dedo a todas esas personas que me encuentro en los foros buscando una versión de putty para Mac, la cual no es necesaria en la mayoría de los casos ya que se puede tener diferentes sesiones preconfiguradas, de prácticamente cualquier protocolo de conexión para el que tengamos una herramienta en la terminal. No obstante, siempre se puede recurrir a la versión de putty de Mac Ports , aunque a continuación verá que no es necesario recurrir a software de terceros.

Lo primero que haremos es abrir una terminal, ya sea desde Spotlight, otro lanzador de aplicaciones o simplemente desde aplicaciones –> Utilidades –> Terminal.

Una vez abierta la terminal, tendremos que situarnos en el menú de la aplicación (Barra superior) –> Terminal –> Preferencias (O bien pulsar las teclas «comando + ,») para seleccionar la pestaña AJUSTES.

Preferencias del terminal en OSX

Preferencias del terminal en OSX

Ahora vamos a añadir una nueva configuración a las ya existentes en el terminal. Para ello solamente habrá que pulsar el botón «+» (El que está marcado en la anterior captura) y asignarle un nombre.

IMPORTANTE: Cuidado con esto, al menos en mi caso, cuando creo una nueva configuración para la terminal, se asigna de forma automática la marca «Por omisión». Esto significa que será la configuración que se abrirá por defecto cuando iniciemos la aplicación terminal. Para cambiarlo, solamente tendremos que situarnos en la que queramos que sea la configuración por defecto al abrirse y pulsar el botón a la derecha del «+», el que trae escrito «Por omisión» y veremos como le añade ese mismo texto a la opción seleccionada.

Si no cambiamos de pestaña (Texto) tras ponerle nombre a la nueva configuración creada, en las opciones de la derecha podremos cambiar el color de las letras, del cursor… etc. Para cambiar el color del fondo, tendremos que avanzar una pestaña más y situarnos en «VENTANA» donde además del color de fondo podremos ponerle un nombre (El que aparece en la parte de arriba de la ventana), establecer el tamaño inicial de la misma y algunas otras cosillas.

Para continuar configurando lo importante de este artículo tendremos que situarnos en la pestaña «SHELL» donde podremos ver en primer lugar un campo check sin marcar bajo el que está la opción «Ejecutar comando».

Pestaña Shell en las preferencias del terminal

Pestaña Shell en las preferencias del terminal

Esa opción es la que nos permitirá iniciar de forma automatizada una sesión de cualquier tipo siempre y cuando esté instalado el comando adecuado para ello y teniendo en cuenta que OSX contiene ssh, ftp, rlogin, telnet, samba.. etc etc, las posibilidades son enormes.

No obstante, para seguir con el ejemplo, veamos como se configuraría alguna de las sesiones.

Lo primero seria, por supuesto, marcar la casilla de «Ejecutar comando» para poder escribir, en el campo de texto, el comando en cuestión que sería, por ejemplo:

Para una sesión normal y corriente de ssh:

ssh nombre_usuario@maquina -p puerto   (El puerto estándar se puede obviar)
ssh fulanito@Servidorejemplo.com -p 2222
En caso de que el servidor en cuestión no admita el nombre de usuario de la anterior forma, se puede escribir así también:

ssh ServidorEjemplo.com -l fulanito -p 2222

Por supuesto, el comando ssh admite muchísimos más parámetros pero sería estirar demasiado el artículo de hoy y para eso ya existen muchos manuales en la red, el comando man y documentación bastante. Respecto al resto de comandos como telnet, ftp o cualquier otro, el método sería el mismo, habría que añadir los parámetros correspondientes al comando para que inicie la terminal en cuestión arrancando una sesión preestablecida.

Ahora bien, para iniciar cualquiera de las configuraciones o sesiones preconfiguradas que hemos añadido, tendremos 2 opciones:

La primera es, desde esa misma ventana de preferencias, una vez esté terminada la configuracion del terminal en cuestión, solamente tendremos que arrastrarla desde su respectivo icono de la parte izquierda de la ventana (El que tiene la imagen en minuatura de la consola y el nombre de la misma) hasta donde queramos ubicar el archivo lanzador de la misma. Por supuesto, si se hace doble clic sobre ese archivo, la sesión se inicia.

Creando un botón para la sesión preconfigurada

Creando un botón para la sesión preconfigurada

La otra forma que hay es más tradicional y es, abrir una terminal y moverse por el menú de la aplicación (Barra superior) –> Shell –> Nueva Ventana –> Sesión (Aquí aparecerá el nombre que se le ha puesto en la ventana de configuración).

Iniciar sesión preconfigurada

Iniciar sesión preconfigurada

Por supuesto, partiendo de estas dos formas, existen ya múltiples variedades como lanzador de aplicaciones, servicios, asociación de atajos de teclado…etc etc pero eso, es otro artículo 😉

leer más

Servicio de traducción en Snow Leopard v2 (Texto y Webs)

Se imagina que, con solamente seleccionar un texto en inglés (en cualquier programa) y presionar una combinación de teclas (O dos clic de ratón, como prefiera) se traduzca en Google Translate?? ¿¿Se imagina que eso no tome recursos del ordenador porque no es ningún proceso en memoria, ni ejecutándose continuamente?? ¿¿Se imagina bajarlo ya preparado o haciéndolo usted mismo desde cero?? Pues si le está costando imaginárselo es que no ha leído aún el artículo «COMO CREAR UN SERVICIO DE TRADUCCION EN MAC» que hace no mucho tiempo he publicado y cuya nueva versión comenzaré a explicar a continuación.

Hace un par de días, uno de los lectores del Blog (Micropark) me comentaba que estaría bien que también se le pudiesen enviar direcciones WEB al traductor creado en el artículo antes mencionado para que se tradujesen como WEB completas. Como no era algo muy complejo, me puse a hacerlo y este es el resultado:

En este artículo no me pararé a explicar cada uno de los pasos y los detalles del porqué se hacen las cosas, ya que lo explico todo, paso por paso, en el ANTERIOR ARTÍCULO.

Ciertamente, Micropark tenía razón, si se seleccionaba un texto la traducción funcionaba perfectamente pero si seleccionábamos una dirección WEB el servicio se limitaba a traducirla como si se tratase de un texto normal, es decir, realizaba una traducción de la propia dirección y no del contenido.

La propia página del traductor de Google hace su distinción del texto que introducimos en ella para saber si se trata de un enlace o no, pero como en nuestro caso ya le enviamos una dirección concreta, la función de detección de enlaces de google no nos sirve. Teniendo esto en cuenta está claro el siguiente paso lógico que debemos de dar:

Tenemos que modificar el Servicio, o más bien el script del flujo de trabajo del automator, para que sea nuestro propio script el que distinga si se trata de una dirección WEB o de un texto normal para lo que nos basaremos en 3 reglas muy simples:

  • Regla 1: Si el texto comienza por http, es una WEB
  • Regla 2: Si comienza por www. también es una WEB
  • Regla 3: Si no es ninguna de las anteriores es un texto normal.

Si se cumple alguna de las 2 primeras, formaremos la dirección a enviar al navegador WEB de la manera que el traductor de Google forma la URL cuando se trata de una WEB a traducir. En cambio, si es la regla 3 la que se cumple, enviamos la dirección tal y como lo hacíamos anteriormente (en la 1era versión del Script).

Así que el flujo de trabajo de automator queda exactamente igual salvo por el Script, que será así:


on run {input}

set input to {input} as text
set LaDirecc to ""
set LaDireccCompleta to CompruebaLinks(input, LaDirecc)
tell application "Safari"
activate
set the URL of (make new document) to LaDireccCompleta
end tell

end run

on CompruebaLinks(input, LaDirecc)
set Comienzo to input as text
set Comienzo to characters 1 thru 4 of input as text
set EsEnlace to false
if Comienzo is "www." then set EsEnlace to true
if Comienzo is "http" then set EsEnlace to true
if EsEnlace is true then
set LaDirecc to "http://translate.google.es/translate?js=y&prev=_t&hl=es&ie=UTF-8&layout=1&eotf=1&u=" & input
else
set LaDirecc to "http://translate.google.com/#en|es|" & input
end if
set input to LaDirecc
return LaDirecc

end CompruebaLinks

Si se fija un poco verá que para hacer la comprobación de las 3 reglas tampoco es necesario complicarse la vida mucho. De hecho, para hacerlo el único paso adicional realizado es comprobar los 4 primeros caracteres con los que comienza la cadena o texto a traducir. Como ya hemos dicho, si comienza por «http» o por «www.» (Fíjese que ambas cadenas son de 4 caracteres ya que en «www.» he incluido el punto) es una dirección web. Esto hace que si introducimos, por ejemplo: «archivoslog.es» no lo reconozca como dirección WEB pero realmente es la manera más simple de hacer la distinción ya que tratar de hacerlo por la terminación, además de complicar muchísimo el código del script debido a la gran cantidad de dominios existentes (.com, .es, .org, .ar, .eu…etc) seria relativamente sencillo encontrarnos fallos en textos con errores de sintaxis (Sin espacio tras el primer punto).

La diferencia más grande, además de la detección de enlaces, evidentemente, es que realizamos esta misma mediante una función llamada CompruebaLinks a la que le pasamos dos variables:

  • input: Es la que contiene el texto seleccionado y que previamente convertimos al tipo «text» para poder manejarla a nuestro antojo.
  • LaDirecc: Esta variable la enviamos vacía al proceso aunque es un pequeño truco para que la reconozca pero su principal misión es la de devolvernos el resultado de la función, es decir, la dirección final ya procesada para enviarla al navegador.

Y ya está, la verdad es que no ha sido complicado ¿verdad?. Ahora bien, como siempre, también está disponible el enlace de descarga del servicio ya completo al cual solamente le faltaría ubicarlo en la carpeta Servicios una vez descargado. Como último apunte, como en MAC hay 2 carpetas «servicios», os detallo la diferencia de ubicar nuestra pequeña creación en una u otra:

Para que todos los usuarios del sistema tengan acceso al servicio (Requiere autenticación):

  • Disco principal/sistema/Librería/Servicios

Si quiere tener el servicio solo para el usuairo actual, la ruta es:

  • Home del usuario/Librería/Servicios

Si tiene dudas de como realizar alguno de los pasos: VER EL ARTÍCULO ANTERIOR (Versión 1)

Servicio de traducción (Versión 2) Google para Snow Leopard: DESCARGAR

.

leer más

Growl + Applescript = Aplicaciones cool

Growl + Applescript = Aplicaciones cool

La verdad es que da gusto cuando ejecutamos un script o una aplicación y nos informa correctamente de lo que está haciendo, o de lo que hizo, sobre todo si lo hace mediante un gestor de mensajes como Growl.

Además, como es un tema interesante, a la par que constructivo, pues voy a tratarlo en este artículo así que vamos a allá con… la comunicación con el usuario desde nuestros applescript.

Lo primero que tenemos que hacer es, además de tener Growl instalado (Evidentemente 😉 ) es conocer el nombre del proceso para referirnos a él, que es GrowlHelperApp.

De esta forma comenzaremos el proceso con un bloque «Tell» hacia dicho proceso:
tell application "GrowlHelperApp"

La mejor forma de conocer todas las posibilidades que tenemos de interactuar con Growl es añadir su diccionario a la biblioteca del editor de applescript, ya que por defecto no aparece. Para ello tendremos que añadir el archivo GrowlHelperApp (Está ubicado dentro del paquete Growl.prefpane) a dicha biblioteca y así podremos ver todos los comandos y parámetros que admite.

Biblioteca Applescript

Biblioteca Applescript

En este caso nos limitaremos mostrar una notificación muy básica para la cúal, la siguiente linea tras la sentencia «Tell» será definir un nombre para el mensaje. Para este ejemplo lo definiremos con la variable Notificacion a fin de poder usarla de nuevo en la próxima línea :

set Notificacion to "Título del mensaje"
La cabecera está lista, ahora ya nos metemos con el mensaje en cuestión. Como hemos dicho, en este ejemplo vamos a mostrar un aviso muy básico por lo que con una sola linea más, crearemos el cuerpo del mensaje:
notify with name Notificacion title "Esto es el Título" description "Esto es el mensaje" application name Notificacion
Tras eso solamente nos quedaría cerrar de nuevo el Bloque «Tell». Veamos como queda todo junto:

Ejemplo de mensaje básico

Ejemplo de mensaje básico


tell application "GrowlHelperApp"
set Notificacion to "Nombre de la notificación"
notify with name Notificacion title "TITULO" description "Esto es el mensaje" application name Notificacion
end tell

Lo normal es que el nombre de la notificación (La variable Notificacion) sea igual que el título de la misma, pero no tiene por que ser así obligatoriamente, de hecho en el ejemplo, lo he cambiado por la cadena «TITULO».

Como ejemplo, la anterior notificación ya nos sirve perfectamente pero ahora vamos a rizar el rizo un poco más. Vamos a crear una SUBRUTINA o HANDLER (Si no conoce nada del mundo de la programación, no se asuste, que lo explicaré todo) llamada ComunicacionUsuario, al que le podremos pasar la variable MensajeUsuario.

Esto nos servirá para poder llamar a dicha subrutina desde nuestros programas, sin tener el codigo de la misma (En este caso, el codigo que mostrará las notificaciones) mezclado con nuestro código, permitiendo así que sea mucho mas facil la lectura y comprension del programa en general.

El tema para llamar a una subrutina incluida en nuestro script o aplicación, basicamente funciona así:

(*
Estas son unas lineas de ejemplo de lo que podría ser un programa cualquiera
Las siguientes lineas declaran la variable que contendrá el mensaje a mostrar
y llamaremos a la subrutina para mostrar dicho mensaje
*)
set MensajeUsuario to "Mensaje que queremos mostrar al usuario"
ComunicacionUsuario(MensajeUsuario)

El anterior código es un ejemplo sencillo de como llamar a la subrutina de mensajes que vamos a crear a continuación. Si es un programa que puede mostrar varios mensajes, dependiendo del punto en el que se encuentre, bastará con escribir al final del programa una subrutina como la que viene a continuación y a la cual podremos llamar todas las veces que queramos con 2 simples lineas como las anteriores, en vez de escribir todo el codigo de llamar a Growl cada vez que necesitamos invocar los mensajes. Para que nos muestre un mensaje u otro, solamene tendremos que declarar el mensaje que queramos que nos muestre en cada ocasión a través de la variable MensajeUsuario antes de llamar a la subrutina.

Además el ejemplo de subrutina que vamos a crear hace una comprobación más, ya que es posible que el equipo donde se lance nuestra aplicación o Script no tenga Growl, por lo que seria un fallo bastante grande dar por hecho que estamos informando al usuario y que no sea verdad (A parte de que lo más probable es que se genere un error que termine con la ejecución del Script o aplicación). Por esto mismo, añadiremos unas lineas para comprobar si Growl se está ejecutando y, en el caso de que no esté habilitado en el equipo, mostraremos un diálogo estándar de applescript como el que muestra la siguiente imagen:

Diálogo estándar de Applescript

Diálogo estándar de Applescript

Aunque se podría compactar el código bastante más, he decidido dejarlo así para que sea más sencillo de comprender para la gente que no sabe programación:
on ComunicacionUsuario(MensajeUsuario)

tell application "System Events"
if exists process "GrowlHelperApp" then
set ExisteGrowl to 1
else
set ExisteGrowl to 0
end if
end tell

if ExisteGrowl is 1 then
tell application "GrowlHelperApp"
set Notificacion to "Extractor de Enlaces"
set LosMensajes to {Notificacion}
register as application Notificacion all notifications LosMensajes default notifications {Notificacion} icon of application "Finder.app"
notify with name Notificacion title Notificacion description MensajeUsuario application name Notificacion
end tell
else
display dialog MensajeUsuario & ". (Se muestra este mensaje al no detectar Growl)" with title "Notificación al usuario" buttons "OK" with icon 2
end if

end ComunicacionUsuario

En este ejemplo, también hemos mejorado un poco más la notificación de Growl añadiéndole alguna cosilla más como el icono del Finder, haciendo que tenga un aspecto un poquito más cuidado. Además tenga en cuenta que esto es solamente un ejemplo cuya finalidad es servir de guía haciéndole ver las posibilidades de este sistema de notificaciones. De la misma manera que añadimos el icono del Finder, podremos añadir cualquier otro icono.

Mensaje de Growl con icono personalizado

Mensaje de Growl con icono personalizado

Eso si, ahora como siempre, el tema lo comienzo yo pero el límite del mismo lo pone usted ya que esto puede dar mucho más de si, haciendo vuestras aplicaciones o scripts mucho más «Cool».

leer más

TextMate 1.5.8 y Snow Leopard: Combinación de teclas perdida

Este pequeño truco, para mi ha sido una bendición y aunque no es realmente mío, creo que debo publicarlo sin dudar ya que, al menos para mi, es vital. El caso es que tras pasarme a Snow Leopard fui actualizando los programas que suelo usar y entre ellos el TextMate (ver 1.5.8) y aunque a simple vista todo funcionaba correctamente, cuando comencé a darle un uso intensivo descubrí, para mi horror, que la combinación de teclas que más uso, la de las teclas COMANDO + CURSOR para seleccionar una linea completa o desde el punto en el que nos encontremos hasta uno de los extremos, ya sea hacia el principio de la linea usando COMADO + FLECHA IZQUIERDA o hacia el final de la misma mediante COMANDO + FLECHA DERECHA, no funcionaban. Lo extraño es que esa combinación funciona en todos los programas ya que es un atajo de teclado del sistema.

Lo primero que hice fue pensar que en la configuración de TextMate encontraría alguna opción para habilitarlo o que, quizás era una combinación asignada ya a otra función pero no encontré nada, lo que me llevo a recurrir a nuestro queridísimo amigo Google.

Por suerte, en un foro de MacUpdate, encontré la solución en un Post de un tal MISHA y consiste en crear una carpeta y un archivo, en el caso de que no existan, ya que si no, bastará con editarlos y añadir cierta información en él.

La ruta es:
Carpeta de usuario /Library/KeyBindings/DefaultKeyBinding.dict
Dicho archivo, tendremos que editarlo para añadir las siguientes líneas, tal y como aparecen a continuación, al final del mismo:
"@\UF702" = "moveToBeginningOfLine:";

"@\UF703" = "moveToEndOfLine:";

"$@\UF702" = "moveToBeginningOfLineAndModifySelection:";

"$@\UF703" = "moveToEndOfLineAndModifySelection:";
Una vez con la información añadida y el archivo guardado, solamente nos quedará reiniciar el TextMate y volveremos a disfrutar de una combinación que, al menos como digo, en mi caso es de las más usadas.

TextMateís command-left/right arrow key functionality (one of the most commonly used keystrokes) is broken in Mac OS X 10.6 (Snow Leopard).
Fortunatelyí thereís a fix. Edit (or create) the file named ~/Library/KeyBindings/DefaultKeyBinding.dict and add the following lines to the end:
«@\UF702» = «moveToBeginningOfLine:»;
«@\UF703» = «moveToEndOfLine:»;
«$@\UF702» = «moveToBeginningOfLineAndModifySelection:»;
«$@\UF703» = «moveToEndOfLineAndModifySelection:»;
Quit and re-launch TextMate, and your precious key-combo should be working again.
leer más

Como crear un servicio de traducción en MAC

Como crear un servicio de traducción en MAC

—————– Actualización del 18 diciembre 2009—————

He tenido que modificar el Script ya que la dirección del traductor ha cambiado, haciendo que no funcionase la anterior versión. Si ya tenias el servicio creado y este ha dejado de funcionar, puedes bajarte la nueva versión o modificar la direcc del traductor en tu Script, como prefieras. Si por el contrario es la primera vez que lees este artículo, puedes seguirlo sin problema dado que ha sido actualizado y todo está correcto.

—————————————————————-

Una de las características más útiles y menos conocidas de MAC es la del menú Servicios, integrado en la barra de herramientas de cada programa. Dichos Servicios son funciones que vienen «de serie» en el sistema y otras que se añaden con cada nuevo programa y que permiten interactuar con los contenidos que estemos visualizando dependiendo del tipo que sean estos, del programa que estemos usando y de la función en si.

Esta carácterística incluye funciones como:

  • Resumir: Permite, a partir del texto seleccionado, hacer un resumen del contenido a modo de preview. Para comprender esta opcion basta con pensar en el pequeño avance que nos muestran de las noticias algunos feeds o algunas Webs.
  • Crear nuevo correo: Inserta el texto seleccionado en un nuevo correo
  • Buscar en Google: Eso mismo, busca la seleccion en Google

Estas son solamente unas pocas de las muchísimas funciones que pueden aparecer en dicho menu y, a pesar de que existen todo tipo de ellas, hay una que no viene por defecto y que es realmente útil: La traducción.

Lo cierto es que, al menos en mi caso, he ido sustituyendo dicha función por la de búsqueda en el diccionario, que es otro de los servicios que viene por defecto en el sistema y que permite ver la definición de una palabra (evidentemente, como cualquier otro diccionario) pero eso, en ocasiones no resulta suficiente, sobre todo si no es una palabra lo que deseamos traducir y es una expresión o un texto completo.

Por otro lado, desde hace unos dias estoy disfrutando de las nuevas funcionalidades de Snow Leopard y una de las mejoras es precisamente la personalización del menu Servicios por lo que animado a causa de esto, he decidido crear mi propio servicio de traducción a través del Traductor de Google de forma que, solamente con el sistema y sus opciones, es decir, sin software de terceros ni ningún tipo de añadido salvo la conexión a internet, veremos como crear este servicio e incluso la forma de ejecutarlo con una combiancion de teclas para evitar movernos por los menús, ganando aún mas rapidez si cabe. Comencemos….

Para que todo sea mas sencillo, vamos a recurrir al programa ideado para hacer las cosas mas sencillas: AUTOMATOR.

Abrimos automator y seleccionamos la opción para crear un nuevo servicio.

El asistente de Automator

El asistente de Automator

Ya dentro de la ventana para componer el flujo de trabajo, veremos en la parte superior de la columna derecha un pequeño cuadro con algunas opciones, en las que tendremos que decirle que nuestro servicio va a recibir TEXTO y lo hará DESDE CUALQUIER APLICACIÓN, tal y como vemos en la siguiente captura:

Creando el servicio de Traducción
Creando el servicio de Traducción

Una vez especificado el tipo de datos y de donde los recibirá, tendremos que situarnos en la columna de la izquierda y arrastrar hacia la de la derecha la acción EJECUTAR APPLESCRIPT, tal y como muestra la siguiente imagen:

Insertando la acción en el flujo de trabajo
Insertando la acción en el flujo de trabajo

Y ahora solo nos falta el código, que a fin de cuentas es lo que hace que el servicio funcione y como habréis intuido a juzgar por la acción incorporada al flujo de trabajo, se trata de un pequeño applescript (Y lo de pequeño esta vez va en serio 🙂 ). Así que dentro de la acción que acabamos de arrastrar al flujo de trabajo de nuestro futuro servicio tendremos que tener escrito estas líneas que siguen, tal cual aparecen aquí debajo.

Código applescript a incluir:


on run {input}

tell application "Safari"
activate
set LaDirecc to "http://translate.google.com/#en|es|" & input
open location LaDirecc
end tell

End run

Básicamente la función de estas lineas es unir la selección texto que hayamos indicado a una URL, concretamente la del traductor de Google para que realice directamente la traducción del texto con dicho servicio. Como instrumento para realizar la acción he optado por Safari ya que viene por defecto en el sistema por lo que seria raro encontrarse un MAC sin él.

Tras realizar tal cual, todos los pasos solamente nos quedará guardar el trabajo realizado en Automator para tener listo nuevo nuevo servicio y aunque una vez guardado ya será totalmente funcional, aun podremos mejorarlo asignándole una combinación de teclas para que sea más cómodo. Eso si, es importante guardarlo con un nombre claro ya que será el que aparezca en el menú.

Hagámos una pequeña prueba, para ver si hemos seguido todos los pasos de forma correcta. Si abrimos cualquier aplicacion que muestre texto, ya sea un navegador Web, un procesador de texto, cualquier otro programa o documento en el que podamos hacer la unica parte totalmente necesaria que es, SELECCIONAR UN TEXTO y nos dirigimos al menú superior del sistema donde veremos algo similar a la siguiente captura, salvo en el nombre del programa (a no ser que también haya abierto el mismo que en ese caso, será todo idéntico):

Pasos para ejecutar el servicio
Pasos para ejecutar el servicio

Para que no haya confusión alguna, iré explicando cada uno de los pasos para ejecutar el servicio.

  1. Seleccionamos el texto. En la imagen he usado TextEdit pero servirá cualquier otra aplicación, documento o correo.
  2. Iremos a la entrada del menú servicios que siempre estará en el barra superior de la aplicación en la que estemos. En el caso de Snow Leopard también podremos acceder a los servicios invocando el menú contextual sobre el texto seleccionado.
  3. Veremos un nuevo menú categorizado según el tipo de datos con el que trabajamos. En este caso, dentro de la categoría texto aparecerá un servicio que tendrá el mismo nombre con el que hayamos guardado el flujo de trabajo de automator. Al pinchar sobre él, se ejecutará el servicio que, en este caso, abrirá una nueva ventana de Safari con la traducción del texto que hayamos seleccionado previamente.

A pesar de que ya hemos creado un servicio completamente operativo, a la par que realmente útil, si tenemos Snow Leopard como sistema podremos rizar el rizo un poquito más asignando una combinación de teclas que nos permita, tras seleccionar el texto, realizar la acción desde el mismo teclado. Para ello bastará con volver a sacar el menú de Servicios desde la barra de tareas superior e ir hasta la entrada que se muestra bajo la lista de servicios cuyo nombre es: Preferencias de los servicios. También es posible acceder a este menú mediante el panel de preferencias del sistema y entrando en la opción de teclado y ratón.

Preferencias de los servicios
Preferencias de los servicios

En esa misma ventana que visualizamos tendremos que buscar el nuevo servicio que hemos creado y tomando como referencia el resto de servicios que aparecen y que ya tienen una combinación de teclas asignadas, sabremos donde hacer doble click para agregarle un atajo de teclado a nuestra creación. En la anterior imagen se puede ver la combinación de teclas que he asignado en mi equipo al servicio de traducción recien creado. He optado por las teclas «Comando + Alt + G» ya que no es excesivamente dificil de recordar gracias a la G de google y existen muchas combinaciones que utilizan el uso de las teclas «Comando + ALT» así que no resulta muy rebuscada. Además hay que tener en cuenta que la combianción que asociemos no debe estar asignada ya a ninguna otra función y con más cuidado aún, en este caso que hemos creado un servicio común a cualquier aplicación por lo que es más difícil encontrar combinaciones vacías.

Un buen consejo para evitar problemas por combinaciones de teclas duplicadas es desactivar, en esa misma ventana, las combinaciones del sistema que no utilicemos. Por ejemplo, si el equipo es un portátil con Trackpad multitouch y usamos los gestos de 4 dedos para invocar Exposé o para mostrar escritorio, no es necesario tener habilitadas tambien las combinaciones de teclas para esas mismas tareas.

Ahora que ya tenemos también una combinación de teclas asignada a nuestro servicio, hemos terminado el trabajo y ya no tendremos que quedarnos con la duda de lo que significa ninguna palabra o texto, solamente por el hecho de que nos de pereza efectuar todos los pasos necesarios para realizar una traducción de la manera tradicional. Además no solo hemos aprendido algo realmente útil sino que hemos dotado al sistema de una nueva y potente característica sin recurrir a herramientas externas.

Por supuesto, utilizando este mismo sistema podremos crear nuevos servicios en el sistema, siendo como muchas otras veces, la única limitación, la que nos impone la falta de ideas e imaginación que le echemos.

Ahora bien, si no le funciona el script o no tiene ganas de seguir los pasos, siempre puede optar por la manera rápida que es descargarse el flujo de trabajo del servicio desde ESTE ENLACE y copiándolo en una de las 2 siguientes rutas dependiendo de lo que quiera:

Para que todos los usuarios del sistema tengan acceso al servicio (Requiere autenticación):

Disco principal/sistema/Librería/Servicios

Si quiere tener el servicio solo para el usuairo actual, la ruta es:

Home del usuario/Librería/Servicios

Una vez esté nuestro servicio en cualquiera de esas 2 rutas, ya podremos disfrutar de su versatilidad desde el menú servicios.

En el caso de que haya optado por crear el servicio paso a paso en vez de descargándolo ya hecho, cuando lo guarde con Automator, la ruta donde estará ubicado es la del usuario actual, es decir, solo estará disponible para el usuario con el que lleve a cabo los pasos. Eso si, siempre podrá moverlo a mano a la otra ruta para que todos los usuarios que utilicen el sistema disfruten de él.

leer más