AutoHotkey: Una herramienta perfecta para Automatizar Tareas en Windows

Publicado: 2020-12-09

¿Prefiere automatizar las tareas mundanas y repetitivas en su computadora para simplificar su flujo de trabajo? Si es así, tiene una de las mejores herramientas de automatización, Automator, en macOS, que le permite crear scripts para automatizar sus tareas en la Mac. Sin embargo, si pertenece al otro extremo del espectro, que usa una máquina con Windows, lo más parecido a Automator en Windows es AutoHotkey o AHK .

AHK es una herramienta integral para todas sus necesidades de automatización. Puede usarlo para crear secuencias de comandos y accesos directos personalizados, reasignar teclas o incluso crear macros para diferentes acciones. Entonces, si planea automatizar tareas en Windows y no conoce AutoHotkey, aquí hay una guía para ayudarlo a comenzar y usar la herramienta para optimizar su flujo de trabajo.

AutoHotkey (AHK) Windows automation

Cuando se trata de automatización, ya sea en Linux, macOS o incluso Windows, hay una gran cantidad de herramientas de automatización, integradas o de terceros, para ayudarlo a crear macros, scripts personalizados y accesos directos. Sin embargo, no todos ofrecen un control granular sobre las diferentes acciones del sistema, así como las acciones de aplicaciones de terceros. Y aquí es precisamente donde AutoHotkey entra en escena.

Tabla de contenido

¿Qué es AutoHotkey?

AutoHotkey es una herramienta gratuita y de código abierto, específica para el sistema operativo Windows, que le permite automatizar muchas de las operaciones en su máquina. Fue lanzado en 2003. Y en ese entonces, comenzó como una herramienta de creación de macros y atajos de teclado que ofrecía la capacidad de automatizar tareas repetitivas. Pero a lo largo de los años, sufrió varios cambios para finalmente emerger como la herramienta de automatización integral para Windows que es ahora.

AutoHotkey Windows scripting
Script AutoHotkey para importar bibliotecas y módulos de Python

A diferencia de otras herramientas de automatización y creación de accesos directos personalizados, que ofrecen una interfaz gráfica (GUI) para que la herramienta sea fácil de usar y fácil de usar para principiantes, AutoHotkey es estrictamente una herramienta de línea de comandos (CLI). Lo que esto significa es que no obtiene una interfaz gráfica con botones y componentes dispuestos por adelantado para interactuar. En cambio, lo que tiene es una interfaz completamente basada en comandos que acepta entradas a través de comandos y realiza funciones en consecuencia.

Si bien este enfoque tiene muchas ventajas, también presenta algunas desventajas ya que, a diferencia de una herramienta GUI, su equivalente CLI no es el más fácil de usar y, por lo tanto, requiere que el usuario tenga una comprensión básica del conocimiento. -cómo ser capaz de utilizarlo en todo su potencial.

¿Cómo instalar AutoHotkey?

Ahora que tiene una idea de qué es AutoHotKey, lo primero que debe hacer para comenzar con la herramienta es descargarla e instalarla en su máquina. Así es cómo.

1. Dirígete al sitio web oficial de AutoHotkey y descarga AutoHotkey en tu computadora.

2. A continuación, ejecute el instalador y haga clic en el cuadro de diálogo de instalación.

3. Cuando se le presente la ventana de selección del tipo de instalación, seleccione Instalación rápida : si desea instalar la herramienta con las configuraciones predeterminadas, o seleccione Instalación personalizada : si necesita más control sobre la herramienta y desea configurar la instalación según sus preferencias.

¿Cómo usar AutoHotkey?

Una vez que AutoHotKey está instalado en su computadora con Windows, la ventana de configuración presenta algunas opciones. Puede seleccionar ejecutar AutoHotkey desde aquí (por ahora) o hacer clic en Ver el tutorial para obtener la documentación completa de AutoHotkey. Si planea crear secuencias de comandos personalizadas para automatizar tareas, esta documentación puede ser útil para ayudarlo a aprender sobre la sintaxis de secuencias de comandos y todos los elementos fundamentales.

Para usar AutoHotkey, asegúrese de tener la herramienta ejecutándose en segundo plano. Puede hacerlo yendo al menú Inicio y ejecutando AutoHotkey desde allí. Una vez que la herramienta está en funcionamiento, ahora tiene dos enfoques diferentes para automatizar tareas en su máquina: puede crear sus propios scripts personalizados desde cero para las acciones que desea automatizar, o puede buscar y descargar scripts (creados por otras personas). ) en su máquina y ejecútelos.

A premade AutoHotkey script
Script AutoHotkey prefabricado para minimizar una aplicación en el menú de la bandeja

Si recién está comenzando con AutoHotkey, se entiende que no tiene el conocimiento completo requerido del lenguaje de secuencias de comandos para crear una secuencia de comandos personalizada. Y, por lo tanto, usar secuencias de comandos prefabricadas (creadas por otras personas) es un lugar seguro para comenzar, sin mencionar que también puede ayudarlo a comprender y aprender cómo funcionan las secuencias de comandos en AutoHotkey para que eventualmente pueda crear una secuencia de comandos usted mismo.

Cuando se trata de encontrar scripts listos para ejecutar, algunas fuentes (fuente 1, fuente 2) en Internet ofrecen una colección de varios scripts para diferentes tareas, que puede descargar y ejecutar directamente en su computadora con Windows. Además, también puede encontrar algunos scripts prefabricados en el sitio web y foro oficial de AutoHotkey. Además, en caso de que tenga problemas, también puede obtener respuestas a sus consultas en el foro. [ Nota: cuando descargue un script, asegúrese de que el archivo termine con la extensión .ahk. ]

Una vez que haya descargado el archivo, puede realizar algunas operaciones diferentes en el script. Simplemente haga clic derecho en el archivo y elija una opción de la lista. Básicamente, hay tres funciones útiles: ejecutar script , compilar script y editar script .

Run-Compile-Edit AutoHotkey script

Run Script , como suena, ejecuta un script. Si tiene ganas de asignar esta función a una tecla, puede hacerlo para simplificar el flujo de trabajo. Por otro lado, Compile Script lo ayuda a compilar el script y empaquetarlo con un ejecutable para convertir el script en un archivo ejecutable (.exe). Y la opción Editar secuencia de comandos es para cuando necesita ver el código o desea realizar cambios en la secuencia de comandos.

Cuando ejecuta un script, se mueve a la bandeja del sistema y se ejecuta en segundo plano. En los momentos en que necesite pausar el script, detenerlo o suspender las teclas de acceso rápido, puede hacerlo haciendo clic con el botón derecho en el ícono ' H ' en la bandeja del sistema y seleccionando la opción adecuada desde allí. Una cosa a tener en cuenta cuando realiza cambios en una secuencia de comandos es que cada vez que edita la secuencia de comandos, debe volver a cargarla para que los cambios surtan efecto.

Reload-Pause-Suspend AutoHotkey script

Por otro lado, si planea crear un script personalizado usted mismo, haga clic con el botón derecho en el escritorio y seleccione New > AutoHotkey Script . Asigne un nombre al archivo y asegúrese de que termine con la extensión .ahk. Ahora, haga clic derecho sobre él y seleccione Editar secuencia de comandos de la lista de opciones. Una vez que el archivo se abra en un editor de texto, comience a agregar código. Cuando haya terminado, asegúrese de guardar los cambios.

¿Cómo funciona AutoHotkey y cómo crear un script personalizado?

En términos simples, AutoHotkey no hace nada por sí solo. En cambio, se basa en scripts, programas que contienen instrucciones para realizar una acción, para automatizar tareas. Un guión se escribe utilizando un editor de texto. Incluso puede escribirlo en la aplicación Bloc de notas que viene preinstalada en Windows. O, si prefiere resaltar la sintaxis, puede usar cualquiera de los editores de texto populares como Emacs, Vim, Sublime Text, Notepad++ o SciTE4AutoHotkey para codificar un script. Sin embargo, si no está familiarizado con los editores de texto, puede usar Notepad ++, que es un editor bastante básico (y relativamente mucho más fácil de usar) o puede obtener el editor SciTE4AutoHotkey, que es una versión personalizada del editor SciTE, adaptado para escribir scripts de AutoHotkey, aunque tiene una curva de aprendizaje.

Los scripts de AutoHotkey pueden contener una sola acción o varias acciones diferentes. Idealmente, agrega una tecla de acceso rápido y especifica una acción que desea realizar al usarla. Sin embargo, para tareas que requieren varias acciones, también puede especificar más de una acción para una tecla de acceso rápido.

Writing a custom AutoHotkey script
AutoHotkey script para hacer una búsqueda en Google sobre lo que hay en el portapapeles

Hablando de secuencias de comandos, la herramienta comprende el lenguaje de secuencias de comandos AutoHotkey que, al igual que cualquier otro lenguaje de programación, constituye varios elementos como variables, objetos, funciones, declaraciones de flujo de control, etc. Cuando se combinan de manera coherente, estos elementos lo ayudan en la realización de sus acciones deseadas y, a su vez, la automatización de sus tareas.

Sin entrar en muchos detalles, hay algunos elementos o funciones básicos que debe tener en cuenta para comenzar con las secuencias de comandos personalizadas. Éstos incluyen:

1. Teclas de acceso rápido: una sola tecla o una combinación de teclas que puede vincular a una acción para ejecutarla rápidamente.

Ej. 1:
^c: :
Run, chrome.exe

Por ejemplo, 2:
^h::
{
Send “Hello,” {enter}
Send “How have you been?”
}

Traducción 1: una acción que ejecuta Chrome cuando presionas la combinación de teclas control + c.

Traducción 2: una acción que se activa cuando presionas la tecla control + h e ingresas Hola, ¿cómo has estado?

La palabra enter se coloca entre paréntesis porque no queremos agregarla como texto. En cambio, queremos que registre la tecla Intro y comience la siguiente oración en una nueva línea.

2. Hotstrings: una función que expande las abreviaturas, similar a la funcionalidad de reemplazo automático.

P.ej:
::omw::On my way{!}

Traducción: expande la abreviatura omw con su forma completa. El signo de exclamación se mantiene entre paréntesis para registrarlo como un signo de exclamación y no como una tecla Alt.

Símbolos esenciales (o modificadores) que debes conocer:

  • # es Windows
  • ! es Alt
  • ^ es control
  • + es cambio
  • & es ampersand (usado para combinar dos componentes)

3. Envío de pulsaciones de teclas: Enviar es una función de AutoHotkey que le permite capturar la tecla ingresada (escrita) y enviarla a un programa. Entonces, si desea simular una pulsación de tecla, esta función lo ayuda a lograrlo. Hay varios parámetros que puede enviar a un programa. Y dependiendo de qué es lo que desea enviar, existen métodos para ayudarlo con lo mismo.

P.ej:
Send “!fs”

Traducción: selecciona el menú Archivo > Guardar.

Símbolos esenciales y sus funciones:

  • ! es Alt
  • + es cambio
  • ^ es control
  • # es ventana

4. Ejecutar programas y abrir sitios web: Ejecutar es una de las funciones más útiles, que le permite ejecutar programas o abrir URL (sitios web). Para los scripts que requieren que abra una aplicación o un sitio web, esta función es lo que necesita. Además, puede vincular la función a una tecla para crear una tecla de acceso rápido y realizar una acción.

Ejemplo 1: Abrir un sitio web
^g::
Run, “https://www.google.com"

Ejemplo 2: ejecutar una aplicación
^n::
Run, “notepad.exe”

Traducción 1: abre la búsqueda de Google en su navegador predeterminado.
Traducción 2: ejecuta la aplicación Bloc de notas.

5. Comandos y funciones: los comandos y las funciones son dos de los elementos más cruciales al crear secuencias de comandos con AutoHotkey, lo que facilita dar instrucciones a un programa. Por un lado, tiene comandos que toman instrucciones simples y resuelven un problema, mientras que, por otro lado, hay funciones que lo ayudan a proporcionar instrucciones complicadas a un programa.

Sintaxis:

  • comando, parámetro 1, parámetro 2, parámetro 3
  • función (parámetro 1, parámetro 2, parámetro 3)

Básicamente, son los paréntesis los que separan el comando de una función.

Por ejemplo: Run, chrome.exe

6. Varios: junto con los comandos, las funciones y las funciones integradas, como enviar pulsaciones de teclas, hay una gran cantidad de funcionalidades diferentes que AutoHotkey le permite usar en su secuencia de comandos. Por ejemplo, puede usar variables para almacenar la salida de un programa, tener un objeto para almacenar el estado de los programas, usar declaraciones de flujo de control para modificar la entrada, la salida y la acción de un programa en consecuencia, usar funciones matemáticas , funciones del mouse , funciones de monitor , funciones del sistema de archivos , entre otras cosas. Básicamente, todo lo que puede hacer con otros lenguajes de programación se puede hacer (hasta cierto punto) usando AutoHotkey.

¿Cuáles son algunos casos de uso de AutoHotkey?

Uno de los muchos casos de uso posibles para AutoHotkey es donde puede crear un script para agregar ciertas líneas de código. De esa forma, puede ahorrar algo de tiempo y esfuerzo que, de lo contrario, gastaría escribiendo líneas de código repetidas una y otra vez. Si trabaja con, digamos, Python o cualquier otro lenguaje de programación, puede crear una cadena de acceso que pueda completar las líneas de código definidas.

Por ejemplo, si usa Python, es probable que necesite importar ciertas bibliotecas y módulos. En ese caso, el siguiente fragmento de código puede ayudarlo a ahorrar tiempo y optimizar su flujo de trabajo.

P.ej:
::impl1::
Send "import tkinter" {enter}
Send "import numpy as np" {enter}
Send "import random" {enter}

Traducción: la cadena de acceso anterior escribe las líneas entre comillas dobles, una debajo de la otra, tan pronto como escribes impl1 en tu editor de texto y presionas la pestaña. La palabra enter, entre paréntesis, como ya se mencionó, se usa para romper una línea. Entonces, lo que obtienes esencialmente es lo siguiente:
import tkinter
import numpy as np
import random

Del mismo modo, si necesita escribir varios códigos de estilo en CSS, puede tener una palabra clave con el conjunto declarado de líneas que necesita ingresar.

Custom AutoHotkey script to clean Recycle Bin
Script personalizado de AutoHotkey para limpiar la papelera de reciclaje

Además de su uso en la codificación, también puede tener scripts de AutoHotkey para iniciar ciertas aplicaciones o sitios web que usa con frecuencia en su máquina. Incluso puede vincular teclas a ciertas funciones en diferentes aplicaciones para realizarlas rápidamente y ahorrar algunos pasos adicionales. Además, otra aplicación útil para AutoHotkey es reutilizar las teclas de función o las teclas especiales (Bloq Mayús, Insertar, Esc y similares) a algo que lo ayude a activar la acción deseada.

Eventualmente, a medida que adquiera confianza con las secuencias de comandos, puede crear una secuencia de comandos que realice una búsqueda rápida (Google) en Internet de lo que tenga en su portapapeles. De esa manera, no necesita abrir el navegador web y buscar su consulta manualmente. Del mismo modo, si está cansado de vaciar la Papelera de reciclaje manualmente para liberar espacio de almacenamiento, también puede crear un script que borre la Papelera instantáneamente.

No hace falta decir que, una vez que domine el lenguaje de secuencias de comandos, prácticamente puede lograr cualquier funcionalidad que piense realizar con AutoHotkey de una manera más eficiente.