Cada aplicación usualmente tiene sus propios de atajos de teclado, que son muy útiles para hacer cosas de forma más eficiente sin buscar en los menús ni en la interfaz gráfica. Pero ¿sabías que hay forma de crear tus propios atajos para hacer prácticamente lo que sea? Hoy aprenderemos a usar AutoHotKey, una herramienta con la que podemos automatizar tareas para cualquier aplicación, todo usando solo nuestro teclado.

¿Qué es AutoHotKey?

Seguro te ha pasado que no encuentras exactamente el atajo que quieres para hacer una cosa muy específica que haces muy seguido. A veces esta tarea sí la puedes hacer pero requiere dos o tres pasos que sí tienen su propio atajo. Estos son escenarios perfectos para AutoHotKey, una herramienta gratuita y de código abierto para Windows que nos permite programar entradas en el teclado o acciones en el sistema operativo que podemos activar mediante atajos de teclado que nosotros mismos definimos.

AutoHotKey funciona a partir de pequeños scripts o secuencias de comandos con instrucciones que se asocian a un atajo de teclado específico.

Algo a tomar en cuenta es que AutoHotKey tiene su propio lenguaje con sintaxis y semántica específia. Pero no te preocupes, si has programado aunque sea un poquito le entenderás muy rápido pues comparte conceptos con los lenguajes más usados. Y si solo quieres usar los scripts y no te interesa crearlos, ni siquiera tienes que saber programación porque puedes solamente copiar y pegar el código y adaptarlo a tus necesidades.

Una cosa genial de este software es que estos scripts se pueden compilar por separado en un programa independiente que no requiere tener AutoHotKey instalado para funcionar, y lo mejor de todo es que ocupan muy poquito RAM, alrededor de 2 MB por instancia.

Usando AutoHotKey (AHK)

OK, entonces, primero descargamos e instalamos AutoHotKey desde a autohotkey.com. Luego creamos un archivo en cualquier carpeta con la terminación .ahk, por ejemplo hola_mundo.ahk . Lo editamos, pegamos este código y guardamos:

^+!U:: ; ctrl + shift + alt + U

MsgBox, 0, ¡Hola mundo!, Soy yo de nuevo 😎,

return
Lenguaje del código: AutoHotkey (autohotkey)

Expliquemos brevemente nuestro pequeño programa. Primero estamos definiendo el atajo que vamos a usar para activarlo, en este caso será presionar CONTROL, SHIFT, ALT y U al mismo tiempo. Yo te recomiendo definir un atajo propio que no esté usándose por otra aplicación o por el mismo sistema operativo para no tener conflictos. Por ejemplo, no usaremos algo como CTRL + C porque ya sabemos que es el default para copiar y pegar texto.

Luego enviamos un mensaje al usuario con el título “¡Hola mundo!” y el texto “Soy yo de nuevo 😎”

Y terminamos nuestro programa con return

Sintaxis básica de AutoHotKey

^ CTRL
+ SHIFT
! ALT
:: definir atajo
:= para asignar variables

Ahora damos doble click sobre el archivo hola_mundo.ahk para que AutoHotKey sepa que debe escuchar este atajo con este atajo en el fondo y esté listo para ejecutarlo cuando lo activemos. Si ahora presionamos nuestra combinación de teclas CTRL + SHIFT + ALT + U, deberíamos ver nuestro mensaje. Muy sencillo, ¿no? 😉

Ahora que ya sabemos usar AutoHotKey, revisemos algunos ejemplos realmente útiles.

Asociar un atajo existente a otro

Con este script podemos fácilmente ejecutar el Administrador de tareas desde CTRL + Q. Lo único que haremos es enviar el atajo universal CTRL + SHIFT + Escape.

^q:: ; CTRL + Q
Send ^+{Esc} ; ctrl + shift + Esc
return
Lenguaje del código: AutoHotkey (autohotkey)

Escribir tu correo (o cualquier texto)

Ahora algo sencillo pero muy útil. ¿Qué tal un atajo ligado a CTRL + ALT + M que escriba tu correo en cualquier lugar? ¡Ya nunca tendrás que escribirlo todo a mano! Esto mismo podrías hacerlo para tu nombre, tu número telefónico, etcétera, lo que te convenga más.

^!M:: ; CTRL + ALT + M
SendInput micorreo@prueba.com
return
Lenguaje del código: AutoHotkey (autohotkey)

Ojo, lo que va después del ; es solo un comentario, no es parte de la sintaxis.

Guardar texto en el portapapeles

También podemos hacer que un texto se guarde en el portapapeles listo para pegar en cualquier otro lado, así no se escribirá inmediatamente.

^!M:: ; CTRL + ALT + M
Clipboard := "micorreo@prueba.com"
return
Lenguaje del código: AutoHotkey (autohotkey)

Escribir el mes actual o mes anterior

Ahora algo un poquito más elaborado. No sabes cuántas veces tengo que escribir tanto el mes actual como el mes anterior cada vez que cambia el mes. Me cansé de equivocarme escribiendo ‘setiembre’ en vez de de septiembre. Entonces hice dos pequeños códigos, uno que escribe el mes actual y el otro escribe el mes anterior, mapeados a CTRL + SHIFT + ALT + F4 y CTRL + SHIFT + ALT + F5 respectivamente:

; mes actual
^+!F4:: ; ctrl + shift + alt + F4
time:=a_nowutc
FormatTime, mes, %time% L0x080a, MMMM  ;- L0x080a = Español de México
SendInput,%mes%
return

; mes anterior
^+!F5:: ; ctrl + shift + alt + F5
date := (A_YYYY . A_MM . "01") ; 1ero de mes del año actual
date += -1, days ; restamos 1 día para irnos al último día del mes anterior
FormatTime, mes_anterior, %date% L0x080a, MMMM ; nos quedamos solo con el nombre completo del mes con el formato MMMM
SendInput,%mes_anterior%
return
Lenguaje del código: AutoHotkey (autohotkey)

Ojo, si combinas varios scripts en un archivo debes poner return entre cada atajo para que se detenga y no se siga ejecutando todo el código hasta abajo desde donde se activó.

Jugando un poco con el formato podrías modificar este script para poner la fecha o la hora completa fácilmente 😉

Buscar mes anterior y reemplazarlo por el mes actual en Excel

Y si combinamos esto con Google Sheets o Excel podemos hacer que copie al portapapeles la celda actual, busque la palabra del mes anterior, la reemplace por el mes actual y luego pegue todo el texto modificado de nuevo en la celda. Todo con un atajo de teclado. ¡Genial! ¿no? 😉

A mí este me sirve mucho porque me pasa muy seguido que copio alguna fila con texto del mes pasado que ya tiene el formato que quiero y luego olvido modificarlo para que quede con el mes actual 😅

^+!F6:: ; ctrl + shift + alt + F6

; mes actual
time:=a_nowutc
FormatTime, mes_actual, %time% L0x080a, MMMM

; mes anterior
date := (A_YYYY . A_MM . "01")
date += -1, days
FormatTime, mes_anterior, %date% L0x080a, MMMM

; copiamos a clipboard
Send, ^c

; traemos el texto del clipboard
texto_clipboard := Clipboard

; reemplazamos el mes anterior con el mes actual
texto := StrReplace(texto_clipboard, mes_anterior, mes_actual)

; guardamos la modificación en clipboard
Clipboard := texto

; pegamos
Send, ^v

return
Lenguaje del código: AutoHotkey (autohotkey)

Configurar scripts de AutoHotKey para que se ejecuten al iniciar el sistema

Ahora, estos programas como los hicimos solo estarán activos si tenemos instalado AutoHotKey y los iniciamos manualmente. Si queremos que se ejecuten al iniciar el sistema, solamente hay que copiar el archivo .ahk que hicimos, luego presionar la tecla Windows y R (Win + R) para ejecutar comandos. Ahí escribimos shell:startup y eso nos abrirá una ventana del Explorador de Windows con la carpeta para poner atajos que se deben ejecutar al iniciar el sistema. Usualmente es algo como C:\Users\MiUsuario\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup . En esta carpeta damos click derecho y elegimos Pegar acceso directo (o Paste shortcut en inglés). Si usas Windows 11 tal vez tengas que usar primero el menú de “Mostrar más opciones”.

Compilar scripts de AutoHotKey

De igual forma, como te platiqué al principio, si quieres pasar este programa a otra computadora pero no quieres tener que instalar AutoHotKey, puedes compilar tu script haciendo click derecho sobre él y eligiendo “Compile script”. Esto nos dará un bonito ejecutable con terminación .exe.

Automatiza lo que sea

Como puedes ver con AutoHotKey podemos hacer infinidad de tareas, y no alcanzamos a cubrir ni la millonésima parte de lo que es posible. Puedes manipular prácticamente todo el sistema operativo con el teclado, abrir programas, maximizar ventanas y un larguísimo etcétera. Te animo a buscar más scripts y códigos útiles de AutoHotKey, ya que por ser de código abierto y muy popular, existe una enorme comunidad que te ayudará a lograr cualquier cosa que quieras hacer con él.

¡Y listo! Ahora ya sabes cómo usar y configurar AutoHotKey para automatizar todo tipo de tareas y ser mucho más productivo.

¡Espero que te haya sido útil esta guía! No olvides seguirnos en YouTube para más tips, trucos y guías de productividad.

Aprende Sheets: Curso práctico de Hojas de cálculo de Google
Aprende Sheets: Curso práctico de Hojas de cálculo de Google