25 abril 2024
Inicio > Número 14 > Introducción a AutoHotkey para traductores

Introducción a AutoHotkey para traductores

No cabe duda de que la tecnología desempeña un papel cada vez más importante en la vida profesional de los traductores. El ordenador es nuestra herramienta de trabajo y hay una larga lista de programas informáticos necesarios o cuando menos útiles para cualquiera de nosotros. En este artículo al autor nos habla de uno relativamente conocido y poco usado: AutoHotkey.

1. Qué es y qué hace AutoHotkey

Antes de comenzar, y a modo de advertencia o descargo de responsabilidad, he de aclarar que en este artículo nos limitaremos a ver usos destinados a usuarios con habilidades informáticas básicas o medias y especialmente interesantes para traductores y profesionales de la lengua. Además, este texto no pretende ni puede ser un manual detallado, sino una breve introducción que ofrezca a quienes no conocen el programa una idea de lo esencial de su funcionamiento y les anime a usarlo.

Sirve para automatizar o abreviar las tareas repetitivas que realizamos en el ordenador y, de esa forma, aumentar, por poco que sea, nuestra productividad.

AutoHotkey es un programa gratuito, de código abierto, para Windows. Sirve para automatizar o abreviar las tareas repetitivas que realizamos en el ordenador y, de esa forma, aumentar, por poco que sea, nuestra productividad. Para ello permite crear macros que funcionan en cualquier parte de Windows y desencadenan acciones o tareas (como abrir una web, insertar un signo o un fragmento de texto, etc.).

¿Es fácil de usar? Digamos que para usar AutoHotkey no hace falta saber programación. No obstante, como un uso más avanzado requiere escribir scripts de código, quizá no sea un programa con el que se sentirán especialmente cómodos quienes le tengan algo de repelús a la tecnología. En todo caso, creo que podrá resultar útil incluso para los menos tecnológicos: como la mayoría de los programas, tiene muchos niveles de uso, desde quien simplemente se instala el programa y copia algunos scripts que encuentra en internet (algo que no presenta ninguna complicación, al alcance de los usuarios menos duchos en cuestiones tecnológicas) hasta quien crea cadenas de código para hacer tareas de mayor o menor grado de complejidad.

2. Interfaz del programa

AutoHotkey
Figura 1. Opciones del programa

Como decía, AutoHotkey es un programa gratuito para Windows. Aunque tiene varias versiones, todas ellas son ligeras (el ejecutable pesa 3 MB). Cuando lo instalamos, se crea automáticamente un archivo llamado AutoHotkey.ahk, donde podremos guardar scripts, y tras lanzar el programa el icono de AutoHotkey aparece en la barra de tareas de Windows. La figura 1 muestra qué se ve al hacer clic derecho en el icono.

AutoHotkey
Figura 2. Módulos del programa
(en la barra de inicio de Windows)

Desde el menú de inicio podemos ver los módulos de AutoHotkey, entre los que destacan el ejecutable, la ayuda, el grabador de scripts (AutoScriptWriter), que graba scripts con todos los movimientos y pulsaciones que hagamos con el ratón y el teclado, y el compilador de scripts (Convert .ahk to .exe), que permite crear programas autónomos independientes de AutoHotkey (figura 2).

3. Uso. Creación de scripts

Como decía, para usar AutoHotkey no hace falta saber programación. Es perfectamente posible importar scripts que encontremos en internet o que nos pase un compañero y usarlos sin tener ningún conocimiento técnico sobre el programa. Además, también se pueden aprovechar las ventajas de AutoHotkey sin ni siquiera instalarlo: un componente del programa (denominado «Convert .ahk to .exe», el compilador) permite convertir un script en un programa independiente, ejecutable sin AutoHotkey, que cualquiera podrá instalarse en su ordenador.

Así, podemos pensar en tres niveles de uso:

  1. Crear scripts o líneas de código para acciones o tareas.
  2. Importar scripts que nos pase un colega o encontremos en internet.
  3. Sin instalarse AutoHotkey, usar scripts creados con él (usar un programa creado con su módulo compilador, sin instalar AutoHotkey). Hay programas enteros basados en scripts de AutoHotkey, como IntelliWebSearch.

Vamos a ver ahora las dos formas de crear scripts: creando código mediante el lenguaje de AutoHotkey y usando AutoScriptWriter. Luego veremos también cómo importar scripts.

3.1. Crear un script

Es cierto que para el principiante crear un script puede parecer algo complicado. Aunque no es una tarea que esté solo al alcance de especialistas en informática, sí se requiere una cierta paciencia para aprender los comandos y funciones del lenguaje de AutoHotkey. Si aprendemos a escribir códigos y nos acostumbramos a ello, podremos encontrar soluciones para pequeños problemas comunes.

El código se crea en un editor de texto y se guarda con la extensión .ahk. El editor que viene predeterminado en Windows es Bloc de notas, pero me parece recomendable instalar uno específico para AutoHotkey: SciTE4AutoHotkey. Este editor facilita la tarea de crear los códigos, pues, entre otras funciones, resalta con colores la sintaxis, lo cual ayuda a ver mejor qué parte es código y qué parte son comentarios sobre el código.

Veamos la estructura del sencillo ejemplo de script de la figura 3.

Scripts AutoHotkey
Figura 3. Ejemplo de script visto en SciTE4AutoHotkey

La parte inicial en verde, con líneas que comienzan con signos de punto y coma, son comentarios sobre el código (no es código), donde podemos anotar qué hace el script.

A continuación tenemos la combinación de teclas usada para ejecutar el script (Control+n). La combinación está formada por un acento circunflejo (que corresponde a la tecla Control), seguida de la letra ene. Luego tenemos dos puntos dos veces, que indican que lo que viene a continuación es la acción que va a desencadenar esa combinación de teclas. Le sigue la acción que desencadena el script, en este caso ejecutar el Bloc de Notas, y por fin se cierra con el comando Return, que indica el fin de la rutina o del fragmento de código.

Ver el código y entender qué significa cada parte es una forma de aprender a escribir scripts. Para ello tendremos que conocer el lenguaje de AutoHotkey, principalmente las teclas de función (^, en el ejemplo de la figura 3) y los comandos (Run y Return, en dicho ejemplo).

Símbolos de las teclas. Algunos scripts se ejecutan automáticamente al presionar Enter o la barra espaciadora (como los de sustituir o expandir texto que veremos más adelante), pero otros necesitan una combinación de teclas para ejecutarlos (como el del ejemplo de la figura 3). Esas combinaciones se sirven de las teclas de función. He aquí una lista de los símbolos de las principales teclas:

^ Ctrl
! Alt
+ May
# Win
Space Espacio
Tab Tabulador
Backspace Retroceso

Como vemos, para Tabulador y Espacio se usan los nombres en inglés y no los caracteres. Por ejemplo, la combinación #Space corresponde a Win+Espacio y ^!Tab a Control+Alt+Tab.

Convendrá tener a mano la lista completa de los símbolos de las teclas.

Lista de comandos y funciones. Aunque aquí no nos detendremos en ello, este enlace muestra la lista con todos los comandos y funciones.

3.2. AutoScriptWriter

Además de crear scripts hilvanando líneas de código, AutoHotkey cuenta con un módulo que permite grabar macros, llamado AutoScriptWriter (antes denominado Macro Recorder). Con ese módulo podremos grabar una macro sin tener que escribir código: el programa graba todos los movimientos que hagamos con el teclado y el ratón. Quizá tampoco esté mal conocer otro programa similar: Pulover’s Macro Creator for AutoHotkey.

3.3. Importar scripts

Como decía, no es necesario crear scripts para usar AutoHotkey. Podemos buscar scripts e importarlos a nuestro ordenador. Para ello no hay más que copiar el código y pegarlo en nuestro archivo AutoHotkey.ahk (o en el archivo de otro script, si así lo deseamos) y volver a cargar el script (en la figura 1 se ve la opción «Volver a cargar script»). El nuevo script ya está operativo.

Además de importar scripts, también podemos compartir un script o incluso crear un ejecutable con uno o varios scripts para que pueda usarlo cualquiera aunque no tenga instalado AutoHotkey.

En la sección «Más información» hay enlaces donde se pueden encontrar scripts. En la siguiente sección indicaré algunos scripts que podréis copiar e importar para usarlos vosotros, si fueran de vuestro interés.

4. Ejemplos de usos

4.1. Usos para traductores

Vamos a ver ahora unos cuantos ejemplos de usos que podrían ser de utilidad para los traductores. Obviamente esta lista es una mera enumeración de ejemplos para sugerir ideas, y convendrá que cada cual vea qué tareas repite frecuentemente y si pueden automatizarse con AutoHotkey.

4.1.1. Introducir signos que no aparecen en el teclado. Uno de los usos básicos de AutoHotkey es introducir signos que no aparecen en el teclado. Por ejemplo, para introducir un espacio fino de no separación podemos introducir su código ASCII, para lo que tenemos que mantener presionada la tecla Alt y luego pulsar 08201 en el teclado numérico. Como es un tanto largo, podemos crear un script en AutoHotkey para ello. En mi ejemplo le he atribuido la combinación Alt+q al espacio fino de no separación, pero cada uno podrá definir la que más práctica le resulte (la elección de atajos conviene hacerla con base mnemotécnica). Así tendremos:

; Introducir un espacio fino de no separación
!q::
{
SendInput {ASC 08201}
}
return

A partir de ese modelo, es fácil crear un atajo para otros signos útiles que no aparecen en el teclado, como las comillas latinas de apertura y de cierre, atribuyéndoles una combinación de teclas a cada una y sustituyendo el 08201 por los códigos ASCII respectivos de estos signos (174 para las comillas de apertura y 175 para las de cierre).

Igualmente útil será contar con un atajo para la raya, y de esa forma usarla con facilidad en cualquier lado y evitar la poco estética solución de poner dos guiones yuxtapuestos. Si usamos Alt+- y su código ASCII (00151), el script, muy similar al anterior del espacio fino de no separación, quedaría así:

; Poner una raya
!-::
{
SendInput {ASC 00151}
}
return

Así, ahora podremos usar estas combinaciones de teclas para introducir estos signos tan frecuentes en español no solo en Word, sino también en el navegador, en el programa de correo, en el programa de TAO y en cualquier aplicación de Windows.

4.1.2. Corrección de errores. Podemos usar AutoHotkey para corregir errores de distintos tipos:

1) Errores de mecanografía: Quizá no sea mala inversión de tiempo ir fijándose en qué tipos de palabras solemos escribir mal e ir añadiéndolas a una lista para que AutoHotkey las corrija automáticamente. Por ejemplo, si solemos escribir bonimio para binomio, qeu por que o lso donde debiera decir los, podemos crear este script:

::bonimio::binomio
::lso::los
::qeu::que

2) También podemos usar AutoHotkey para reemplazar palabras automáticamente a medida que escribimos con el fin de aplicar nuevas normas ortográficas en ciertas palabras (podemos hacer que al escribir reemplace sólo por solo); para cambiar palabras en que solamos dudar (pongamos, por ejemplo, que dudamos dónde va la tilde de ojalá: podemos hacer que corrija automáticamente ójala y ojala por ojalá); o para aplicar una norma estilística que haya que respetar (por ejemplo, un cliente que quiera que escribamos su nombre de una determinada manera o que usemos un determinado término en lugar de otro). He aquí algunos ejemplos:

::sólo::solo
::ójala::ojalá
::ojala::ojalá
:c:inra::INRA
:c:Inra::INRA
::unesco::UNESCO

Nótese que la letra ce sirve para diferenciar mayúsculas y minúsculas y el asterisco indica que ese texto será sustituido sin necesidad de escribir ningún signo de puntuación ni de pulsar la barra espaciadora.

:c:erc::En relación con
:*:onu::Organización de las Naciones Unidas

3) Aprovechar las opciones de autocorrección de Word. Para aprovechar más aún la posibilidad de cambiar automáticamente esas cadenas de texto, podríamos exportar las opciones de autocorrección de Word e importarlas a AutoHotkey. Así, los errores que Word corrige automáticamente cuando escribimos en ese programa, AutoHotkey los corregiría cuando escribamos en cualquier lado (el programa de TAO, Gmail…). El archivo que contiene los pares de autocorrección de Word para español se llama MsSp7es y tiene extensión .acl (archivo «AutoCorrect»).

4.1.3. Expandir texto. De manera similar a lo visto en el punto anterior, podremos crear scripts para escribir por extenso nombres o expresiones de cierta longitud.

1) Expandir abreviaturas. Por ejemplo, podríamos tener:

::abnu::Naciones Unidas
::abbid::Banco Interamericano de Desarrollo
::abunesco::Organización de las Naciones Unidas para la Educación, la Ciencia y la Cultura
::pq::porque
::pej::por ejemplo
::epc::el presente contrato
::emho::en mi humilde opinión

2) Expandir términos o frases frecuentes en una traducción. A partir del mismo principio, también podríamos crear scripts de este tipo:

epp::equipamientos de protección personal

4.1.4. Plantillas de correos electrónicos para clientes. También se puede usar AutoHotkey para crear plantillas con mensajes de correos electrónicos a clientes. Por ejemplo, podríamos crear un script para que al pulsar Alt+t se escriba algo así:

!t:: send Querido cliente: {enter}{enter}Aquí envío el texto traducido. {enter}{enter}Saludos cordiales.

O, por ejemplo, usar cadenas de reemplazo para que al escribir trcl (traducción a cliente) se sustituya por un texto predeterminado:

::trcl::
(
Estimado cliente:

Aquí envío el texto traducido.

Un saludo.
)

De la misma manera, podríamos crear scripts para insertar datos que usemos a menudo: el NIF en una factura, los datos bancarios, una despedida o la firma (quizá una para cada uno de nuestros idiomas de trabajo). Por ejemplo:

::desen::Best regards,
::deses::Un saludo,
::fires:: Fernando Campos Leza | Traductor
::firen:: Fernando Campos Leza | Translator

4.1.5. Lanzar búsquedas. Podremos crearnos atajos para buscar en un diccionario en línea, en Google, etc. No obstante, para eso disponemos de una solución mucho mejor: IntelliWebSearch. En todo caso, veamos un ejemplo de un script para buscar en Google un término que hayamos marcado:

;--------------------------
;Buscar en Google con Win+ñ
;--------------------------
#ñ::
Send ^c
Run http://www.google.com/search?q=%clipboard%
Return

4.1.6. Atajos para los programas de TAO. Si en nuestro programa de TAO hay atajos que a menudo tenemos que pulsar de manera consecutiva, podríamos crear un script para unir la serie de atajos y pulsarlos con una única combinación de teclas.

4.1.7. Aprovechar scripts especialmente útiles para traductores. En la web de AutoHotkey podremos encontrar muchos scripts, algunos de los cuales pueden ser interesantes para traductores. Veamos unos pocos:

1) Accents. Incluye un montón de acentos, para diversas lenguas, muchos de los cuales normalmente no aparecen en el teclado. Puede descargarse Accents.ahk y Accents.exe, respectivamente, para quien tenga AutoHotkey instalado y para quien no lo tenga y quiera instalar este programilla (que funcionará independientemente de AutoHotkey).

2) AutoCorrect. Es un script que corrige unos 4700 errores de ortografía o escritura comunes en inglés a medida que se va escribiendo.

3) ChangeCase. Sirve para cambiar de mayúscula a minúscula y viceversa. Existe tanto ChangeCase.ahk como ChangeCase.exe.

4.2. Usos para cualquier usuario de ordenador

Veamos ahora algunos ejemplos de usos que pueden ser útiles para cualquier usuario de ordenador (en realidad, algunos de los que aparecen en el apartado anterior también podrían incluirse en este).

4.2.1. Ejecutar un programa. Aunque la posibilidad de fijar iconos en la barra de estado hace que se pueda lanzar rápidamente un programa, siempre será más rápido prescindir del ratón y usar una combinación de teclas. Veamos un ejemplo de script para ejecutar un programa:

#t:: run C/….to3000.exe
Return

4.2.2. Abrir una web. Podrá ahorrarnos tiempo crearnos un script para lanzar algunas webs que consultemos muy a menudo, como Gmail, Cosnautas, la agenda en línea, el sitio de un cliente, etc. He aquí un ejemplo de un sencillo script para lanzar la web de Cosnautas pulsando Control+n:

^n run http://www.cosnautas.com/
Return

4.2.3. Abrir un documento. Podrá ser útil para documentos que consultéis muy a menudo, como un glosario de un cliente, un Excel de contabilidad, etc. Lo mismo podrá hacerse para abrir carpetas importantes del sistema.

4.2.4. Reasignar teclas y botones a otras funciones. Podremos, por ejemplo, hacer que al pulsar una tecla se escriba otra letra (por ejemplo, para un teclado comprado en el extranjero, que no tenga ñ, ç o ¿), o cambiar el funcionamiento de los botones del ratón. También nos podría interesar desactivar algunos de las combinaciones de teclas predeterminadas de Windows.

4.2.5. Crear una ventana de ayuda para AutoHotkey. El comando MsgBox de AutoHotkey permite mostrar información o advertencias, y podría ser útil para crear un script que abra una lista de combinaciones de teclas frecuentes que usemos en AutoHotkey (o, por qué no, para que muestre una lista de los atajos que más nos interesen de nuestro programa de TAO).

4.2.6. Otras tareas diversas. En la web de AutoHotkey podremos encontrar muchos scripts, pero concluyo esta sección con un enlace que contiene muchos microprogramas creados con AutoHotkey.

4.3. Pequeño ejercicio práctico

Una vez que hemos visto de forma somera cómo funciona el programa, animo a quienes aún no usen AutoHotkey a que lo instalen ahora y hagan un pequeño ejercicio práctico: importar un script y ver cómo funciona. Para ello, tras descargar el programa e instalarlo, podéis tomar uno de los scripts del apartado 5.1 (por ejemplo, el de la raya) e importarlo (podéis cambiar las combinaciones de teclas del ejemplo, eligiendo otra de vuestra preferencia).

Para ejecutarlo, tras lanzar AutoHotkey, hay que hacer clic derecho sobre el icono de la barra de tareas y elegir «Edit This Script». Se abrirá el editor de texto y tendréis que pegar el script ahí. Tras cerrar la ventana del editor y guardar los cambios, se hace nuevamente clic derecho sobre el icono y se vuelve a cargar el script pinchando en «Reload This Script». Ya debería funcionar y a partir de ahora, cada vez que necesitéis poner una raya simplemente podréis usar ese atajo.

5. Más información

Como decíamos, este artículo tan solo ha pretendido dar una idea del partido que le podemos sacar a AutoHotkey. Quien desee saber más sobre el programa podrá consultar algunos de los siguientes enlaces o documentos:

Evidentemente, un buen sitio para empezar a buscar información es la propia web del programa, que ofrece mucha documentación sobre la aplicación.

Dentro de la web recomiendo consultar los foros:

En su web hay también un tutorial para principiantes, con explicaciones concisas y sencillas, y que abarca muchas funciones. Está en inglés.

Fuera de la web del programa, la fuente más rica que conozco es la web de Jack Dunning, autor de varios documentos muy detallados que exploran muchos aspectos del programa y del sinfín de posibilidades que ofrece. Los más interesados se podrán bajar gratuitamente la publicación «AutoHotkey Tricks You Ought To Do With Windows».

Referencias

Ahkbook – the book for AutoHotkey. Disponible (en inglés).

Dunning, Jack. Guía básica de AutoHotkey. Edición Kindle, 2015.

Dunning, Jack. AutoHotkey tricks you ought to do with Windows. 2016. 176 p. PDF disponible para descarga gratuita.

Tutorial básico de AutoHotkey (en inglés).

Web de AutoHotkey (en inglés).

Fernando Campos Leza
+ artículos

Es traductor, residente en Logroño. Se licenció en Filosofía en San Sebastián (tras un año de Erasmus en Aberdeen y otro en Berlín) y en Traducción en la Escuela Superior de Intérpretes y de Traductores de París (E.S.I.T.), donde también obtuvo un máster. Traduce a partir de inglés, francés, portugués y (muy de ciento en viento) alemán, al servicio principalmente de organizaciones internacionales y no gubernamentales. Ha publicado varios artículos en Panace@ y es socio de diversas asociaciones de traductores, entre ellas Asetrad y AITC.

Fernando Campos Leza
Fernando Campos Leza
Es traductor, residente en Logroño. Se licenció en Filosofía en San Sebastián (tras un año de Erasmus en Aberdeen y otro en Berlín) y en Traducción en la Escuela Superior de Intérpretes y de Traductores de París (E.S.I.T.), donde también obtuvo un máster. Traduce a partir de inglés, francés, portugués y (muy de ciento en viento) alemán, al servicio principalmente de organizaciones internacionales y no gubernamentales. Ha publicado varios artículos en Panace@ y es socio de diversas asociaciones de traductores, entre ellas Asetrad y AITC.

Redes Sociales

956me gustaMe gusta
10,638seguidoresSeguir

Último número

- Advertisement -spot_img

Artículos relacionados