Tecla de acceso rápido automático es una pieza de software fantástica pero complicada. Inicialmente estaba destinado a volver a unbinar teclas de acceso rápido personalizadas a diferentes acciones, pero ahora es una suite completa de automatización de Windows.
AHK no es particularmente difícil de aprender para los nuevos usuarios, ya que el concepto general es bastante simple, pero es un lenguaje de programación completo y completo para Turing. Aprenderá la sintaxis mucho más fácilmente si tiene experiencia en programación o está familiarizado con los conceptos.
¿De qué vamos a hablar?
Instalación y uso de AutoHotkey
El proceso de instalación de AutoHotkey es sencillo. Descargue el instalador desde el sitio web oficial y ejecutarlo. Elija “Instalación rápida”. Después de instalar el software, puede hacer clic con el botón derecho en cualquier lugar y seleccionar Nuevo > script de tecla automática para crear un nuevo script.
Los scripts AHK son archivos de texto con un .ahk
extensión. Si hace clic con el botón derecho en ellos, obtendrá algunas opciones:
- “Run Script” cargará su script con el tiempo de ejecución de AHK.
- “Compile Script” lo incluirá con un ejecutable AHK para hacer un archivo EXE que pueda ejecutar.
- “Editar script” abrirá su script en su editor de texto predeterminado. Puede usar el Bloc de notas para escribir scripts AHK, pero le recomendamos que utilice SciTE4AutoHotkey, un editor para AHK que admite el resaltado y la depuración de sintaxis.
Mientras se ejecuta un script, ya sea un EXE o no, lo encontrará ejecutándose en segundo plano en el área de notificación de Windows, también conocida como bandeja del sistema. Busque el icono verde con una “H” en él.
Para salir, pausar, volver a cargar o editar un script, haga clic con el botón secundario en el icono de notificación y seleccione la opción adecuada. Los scripts continuarán ejecutinándose en segundo plano hasta que salga de ellos. También desaparecerán cuando cierre la sesión de Windows o reinicie su PC, por supuesto.
¿Cómo funciona AutoHotkey?
En esencia, AHK hace una cosa: vincular acciones a teclas de acceso rápido. Hay muchas acciones diferentes, combinaciones de teclas de acceso rápido y estructuras de control, pero todos los scripts funcionarán según el mismo principio. Aquí hay un script AHK básico que inicia Google Chrome cada vez que presiona Windows + C:
#c:: Run Chrome return
La primera línea define una tecla de acceso rápido. El signo de libra (#) es la abreviatura de la tecla de Windows y c
es la tecla C del teclado. Después de eso, hay un doble punto (::) para significar el inicio de un bloque de acción.
La siguiente línea es una acción. En este caso, la acción inicia una aplicación con el Run
mandar. El bloque se termina con un return
al final. Puede tener cualquier número de acciones antes del return
. Todos dispararán secuencialmente.
De esa manera, ha definido un mapeo simple de clave a acción. Puede colocar tantos de estos como desee en un .ahk
y configáralo para que se ejecute en segundo plano, siempre buscando teclas de acceso rápido para reasignar.
Teclas de acceso rápido y modificadores
Puede encontrar una lista completa de los modificadores de AHK en la documentación oficial, pero nos centraremos en las características más útiles (y geniales).
Todas las teclas modificadoras tienen taquigrafías de un solo carácter. Por ejemplo # ! ^ +
son Windows, Alt, Control y Mayús, respectivamente. También puede diferenciar entre Alt izquierda y derecha, Control y Mayús con el <
y >
modificadores, lo que abre mucho espacio para teclas de acceso rápido adicionales. Por ejemplo, ¡<! es alt a la izquierda y >+ es a la derecha Mayús. Echa un vistazo a la lista de claves para todo lo que puedas referenciar. (Spoiler: Puedes hacer referencia a casi todas las teclas. Incluso puede hacer referencia a otros dispositivos de entrada que no sean de teclado con un pequeña extensión).
Puede combinar tantas teclas como desee en una tecla de acceso rápido, pero pronto se quedará sin combinaciones de teclas para recordar. Aquí es donde entran los modificadores, que te permiten hacer cosas más locas. Vamos a desglosar un ejemplo de los documentos de AHK:
El verde #IfWinActive
se denomina directiva, y aplica contexto adicional a las teclas de acceso rápido físicamente debajo de él en el script. Cualquier tecla de acceso rápido después de ella solo se activará si la condición es verdadera, y puede agrupar varias teclas de acceso rápido bajo una directiva. Esta directiva no cambiará hasta que llegue a otra directiva, pero puede restablecerla con un espacio en blanco #If
(y si eso parece un truco, bienvenido a AHK).
La directiva aquí es verificar si una ventana específica está abierta, definida por ahk_class Notepad
. Cuando AHK recibe la entrada “Win+C”, se disparará la acción bajo el primero #IfWinActive
sólo si la directiva devolvió true y, a continuación, compruebe el segundoond uno si no lo hizo. AHK tiene muchas directivas, y puedes encontrarlas todas en los documentos.
AutoHotkey también tiene cuerdas calientes, que funcionan como teclas de acceso rápido, excepto reemplazar una cadena completa de texto. Esto es similar a cómo funciona la autocorrección; de hecho, hay un Secuencia de comandos de autocorrección para AHK, pero admite cualquier acción de AHK.
La cadena caliente coincidirá con la cadena solo si se escribe exactamente. También eliminará automáticamente el texto coincidente para reemplazar la cuerda caliente, aunque este comportamiento se puede ajustar.
Acciones
Una acción en AHK es cualquier cosa que tenga un efecto externo en el sistema operativo. AHK tiene muchas acciones. No podemos explicarlos todos, así que elegiremos algunos útiles.
- Envío de entradas, ya sea texto o varias pulsaciones de botones.
- Mover el ratón. De hecho, AHK a veces se marca erróneamente como software de trucos para videojuegos, ya que las personas han hecho aimbots completamente funcionales con él.
- Hacer clic con el ratón, con posicionamiento relativo a la ventana actual.
- Visualización de menús de diálogo, completo con formularios y campos de entrada.
- Mover ventanas, ajustando el tamaño, y abriendo y cerrando.
- Reproducción de música.
- Escribir en el Registro de Windows. Sí, de verdad.
- Modificación del contenido del Portapapeles.
- Lectura y escritura de archivos. Puede recorrer archivos en bucle y ejecutar acciones en cada línea. AHK puede incluso escribir a
.ahk
y ajustar su propio código.
La mayoría de estas acciones también tendrán comandos orientados a la información asociados con ellas. Por ejemplo, puede escribir en el portapapeles, pero también puede hacer que el contenido del Portapapeles se almacene en una variable y ejecute funciones cuando cambie el portapapeles.
Empatándolo todo con estructuras de control
AHK no sería lo que es sin todas las estructuras de control que lo hacen Turing-completo.
Además de la #If
directivas, también tiene acceso a If
dentro de bloques de acción. AHK tiene For
Bucles corsé rizado Bloques Try
y Catch
declaraciones, y muchas otras. Puede acceder a datos externos desde el bloque de acción y almacenarlos en Variables o Objetos para usar más tarde. Puede definir funciones personalizadas y Etiquetas. Realmente, cualquier cosa que pueda hacer fácilmente en otro lenguaje de programación probablemente pueda hacerlo en AHK con un poco de dolor de cabeza y una mirada a través de los documentos.
Por ejemplo, imagine que tiene una tarea aburrida y repetitiva que requiere que haga clic en varios botones seguidos y espere a que un servidor responda antes de volver a hacerlo ad infinitum. Puede usar AHK para automatizar esto. Desea definir algunos bucles para mover el mouse a ubicaciones específicas, hacer clic y, a continuación, pasar al siguiente lugar y hacer clic de nuevo. Agregue algunas declaraciones de espera para que no se rompa. Incluso podrías intentar leer el color de los píxeles en la pantalla para determinar lo que está sucediendo.
Una cosa es segura: tu guión probablemente no será bonito. Pero tampoco lo es AutoHotkey, y eso está bien.