
🖱 Cómo reasignar los botones del ratón con AutoHotkey y acelerar tu flujo de trabajo
Compró un mouse con botones adicionales, pero solo usa el izquierdo, el derecho y la rueda de desplazamiento. Los botones bajo el pulgar permanecen inactivos, aunque podrían cerrar pestañas, alternar entre ellas, duplicar clics y abrir las herramientas de desarrollo. Mes tras mes, recurre al teclado para atajos que el mouse podría manejar por sí solo.
El problema no es un mouse «equivocado». El problema es que el software de fábrica del fabricante o bien no puede asignar acciones complejas a un botón, o falla cuando cambia la ventana activa. La solución consiste en enviar señales «vacías» desde los botones e interceptarlas con un script que entienda el contexto de la aplicación.
💡 Resumen rápido:
- Asigne las teclas virtuales F13-F24 a los botones adicionales del mouse mediante el controlador: no hacen nada en el sistema, pero el script las «escucha»
- Instale AutoHotkey y escriba un script: cada aplicación recibe su propio conjunto de acciones, desde cerrar una pestaña hasta mantener presionada la tecla Alt en Photoshop
- Use Window Spy para engancharse a cualquier archivo exe: el método funciona en navegadores, editores de código, reproductores de video, en cualquier parte
Qué es AutoHotkey y por qué su mouse lo necesita
AutoHotkey (AHK) es un lenguaje de automatización gratuito y de código abierto para Windows. Puede interceptar pulsaciones de teclas y clics de botones del mouse, enviar combinaciones arbitrarias a la ventana activa y distinguir aplicaciones por el nombre del ejecutable. Esta última característica lo convierte en la capa ideal entre el hardware «tonto» y el software: el mismo botón del mouse hace cosas distintas en Chrome, Photoshop y en el escritorio.
Al momento de escribir esto, la versión actual es AHK v2.0, que es más rápida, más estricta con la sintaxis y ha eliminado comandos obsoletos como #NoEnv. Los scripts a continuación están escritos para v2, pero la lógica se traslada también a v1 (que aún recibe soporte por compatibilidad con versiones anteriores).
Una alternativa sin scripts es XMBC (X-Mouse Button Control), una utilidad con interfaz gráfica. También distingue aplicaciones, admite hasta 10 capas por perfil y no requiere código alguno. La desventaja: cero portabilidad entre equipos, y las capacidades se limitan a lo que el desarrollador incorporó. AHK es más flexible, y el script puede copiarse junto con el resto de la configuración de su sistema.
Paso 1: asigne los botones a las teclas virtuales F13-F24
Las teclas de función normales (F1-F12) están ocupadas; hacen algo en cada aplicación. Pero Windows también reconoce F13-F24, códigos de escaneo reales que ningún programa engancha por defecto. Son ideales como «señuelos»: el controlador del mouse envía F15 al sistema, y el sistema no se la pasa a nadie excepto a nuestro script AHK.
Asignación mediante el controlador del mouse
Abra el software propietario de su mouse: Logitech G Hub, Razer Synapse, SteelSeries Engine o una herramienta universal. Busque la pestaña de asignación de botones y, para cada botón adicional, elija «Asignar pulsación de tecla» o «Asignación de pulsación». Ingrese F13, F14, F15…, una para cada botón. No se preocupe porque las teclas F13-F24 no existan físicamente en el teclado: el controlador enviará el código de escaneo y Windows lo aceptará.
¿Cómo «presiona» F15 si no existe esa tecla? Guarde este fragmento de AHK en un archivo llamado send.ahk y ejecútelo:
1 ; send.ahk — emulates pressing F15 after 5 seconds 2 Sleep 5000 3 Send "{F15}" 4 ExitApp
Ejecútelo, cambie rápidamente a la ventana del controlador del mouse, haga clic en el campo «Asignar pulsación de tecla» y, después de 5 segundos, AHK enviará F15 y el controlador la registrará. Repita para cada botón, cambiando el número de la tecla F.

Paso 2: instale AutoHotkey y cree un script básico
Descargue AHK desde el sitio web oficial (elija la versión v2.0). Después de la instalación, cree un archivo de texto con la extensión .ahk, por ejemplo mouse.ahk. Encabezado básico del script:
1 ; mouse.ahk — basic AHK v2 setup 2 #Requires AutoHotkey v2.0 3 SendMode "Input" 4 SetWorkingDir A_ScriptDir 5 SetTitleMatchMode 2 6 #MaxHotkeysPerInterval 300 7 #InstallMouseHook
Desglose: SendMode "Input" es el método más rápido y fiable para enviar pulsaciones de teclas; SetTitleMatchMode 2 busca una subcadena en el título de la ventana (basta con una parte del nombre); #InstallMouseHook habilita la interceptación de botones del mouse a bajo nivel.
Inicio automático al arrancar Windows
Presione Win+R, escriba shell:startup y se abrirá la carpeta de inicio. Mantenga presionada la tecla Alt y arrastre mouse.ahk a esta carpeta: se creará un acceso directo. El script se ejecutará con el sistema. Resulta cómodo editar archivos .ahk en Sublime Text o Notepad++; ambos resaltan la sintaxis de AHK.
Paso 3: escriba un script para el navegador
El navegador es un campo de pruebas para los botones del mouse. A continuación, una disposición que cubre las principales acciones de navegación:
1 ; Chrome / any Chromium-based browser 2 #HotIf WinActive("ahk_exe chrome.exe") or WinActive("ahk_exe msedge.exe") 3 ; Ctrl+W = close tab 4 F14::Send "^w" 5 ; Ctrl+Shift+C = developer tools (inspect element) 6 F22::Send "^+c" 7 ; Ctrl+PageDown = next tab 8 F16::Send "^{PgDn}" 9 ; Ctrl+PageUp = previous tab 10 F17::Send "^{PgUp}" 11 ; Alt+Left = back in history 12 F18::Send "!{Left}" 13 ; F5 = reload tab 14 F20::Send "{F5}" 15 ; Ctrl+Shift+T = restore closed tab 16 F23::Send "^+t" 17 #HotIf
Copie el bloque en mouse.ahk, reemplazando los números de tecla F por los que asignó en el controlador. Después de guardar el archivo, presione Ctrl+R (Recargar script) desde el menú de la bandeja de AHK; las nuevas asignaciones funcionarán al instante sin necesidad de reiniciar el navegador.
#HotIf limita el alcance del bloque; los botones solo funcionan cuando Chrome o Edge están enfocados. Cambie al Explorador de archivos, y esas mismas F14-F23 pueden hacer otra cosa, o nada en absoluto.
Paso 4: script para Photoshop y una tableta gráfica
Un ejemplo más complejo: Photoshop, donde los botones no solo envían una combinación, sino que mantienen presionada una tecla modificadora. Esto es invaluable al trabajar con un lápiz Wacom; los botones del lápiz activan el selector de color y el arrastre del lienzo:

1 ; Adobe Photoshop 2 #HotIf WinActive("ahk_exe photoshop.exe") 3 ; Hold Alt = color picker (while button is pressed) 4 F14:: 5 { 6 if !GetKeyState("Alt") 7 Send "{Alt down}" 8 } 9 F14 Up::Send "{Alt up}" 10 11 ; Alt+Ctrl+Z = step backward (instead of simple Undo) 12 F16::Send "!^z" 13 14 ; Shift+Ctrl+Z = step forward 15 F17::Send "+^z" 16 17 ; Hold Space = canvas dragging 18 F18:: 19 { 20 if !GetKeyState("Space") 21 Send "{Space down}{Click down}" 22 } 23 F18 Up::Send "{Space up}{Click up}" 24 25 ; Ctrl+S = save 26 F19::Send "^s" 27 28 ; Ctrl+N = new document 29 F20::Send "^n" 30 31 ; Alt+Shift+Ctrl+S = Export → Save for Web 32 F23::Send "!+^s" 33 #HotIf
Observe la construcción F14:: con llaves; se trata de una tecla rápida multilínea. GetKeyState("Alt") protege contra la pulsación repetida del modificador si el botón rebota. F14 Up:: se activa al soltar y devuelve Alt a su estado original.
El mismo enfoque aplica a cualquier software que necesite modificadores: Figma (Espacio para la mano de arrastre), Blender (Shift para movimiento preciso), DaVinci Resolve (Alt para copiar un clip).
Paso 5: acciones globales por defecto
Cuando ninguna de las aplicaciones está en foco, los botones realizan algo universal:
1 ; Global bindings (work everywhere without a specific #HotIf) 2 F14::Send "{Backspace}" ; back (like a browser button) 3 F15::Send "{Click 2}" ; double click 4 F19::Send "{MButton}" ; middle button (easier than clicking the wheel) 5 F21::Send "#d" ; Win+D = minimize all windows (boss key)
El doble clic con un solo botón es un favorito personal del autor del método original. Tras una semana de uso, el doble clic físico resulta desconcertante: ¿por qué pulsar dos veces cuando puede pulsar una?
Alternativa sin código: X-Mouse Button Control
Si los scripts no son su camino, considere X-Mouse Button Control (XMBC). Es una utilidad gratuita con interfaz gráfica que hace lo mismo: perfiles para archivos .exe específicos, hasta 10 capas por perfil, cambio de capa mediante tecla rápida.
Ventajas de XMBC: se instala en un minuto, la configuración consiste en seleccionar una acción de un menú desplegable, no requiere código. Desventajas: menos flexibilidad (no puede escribir una condición con GetKeyState) y la configuración reside en el registro y rara vez sobrevive a un traslado a otra computadora. Para escenarios básicos («cerrar pestaña», «cambiar pista»), una opción excelente. Para construcciones multinivel con modificadores mantenidos, solo AHK servirá.
Cómo apuntar a cualquier aplicación con Window Spy
Para añadir soporte para un nuevo programa, necesita averiguar el nombre de su archivo ejecutable. En la bandeja del sistema, haga clic derecho en el icono de AHK y seleccione Window Spy. Haga clic en la ventana del programa objetivo; Window Spy mostrará:
- Window Title, el título de la ventana (puede apuntar por esto)
- ahk_exe, el nombre del proceso (por ejemplo
firefox.exeocode.exeonotion.exe) - ahk_class, la clase de la ventana (útil para distinguir diálogos dentro de una aplicación)
Añada un nuevo bloque a mouse.ahk:
1 #HotIf WinActive("ahk_exe firefox.exe") 2 F14::Send "^w" 3 ; ... your actions 4 #HotIf
Guarde, Ctrl+R para recargar el script, listo. La técnica es universal: reproductores de video (VLC, PotPlayer), mensajeros (Telegram, Discord), IDEs (VS Code, PhpStorm), administradores de archivos, cualquier cosa que tenga un .exe.
Extra: controlar la música con teclas multimedia globales
Si su teclado carece de botones multimedia, el mouse puede reemplazarlos. Las siguientes acciones son globales y no requieren detectar la ventana del reproductor:
1 ; Media control — works always 2 F18::Send "{Media_Prev}" ; previous track 3 F19::Send "{Media_Play_Pause}" ; pause / play 4 F20::Send "{Media_Next}" ; next track 5 F22::Send "{Volume_Down}" ; volume down 6 F23::Send "{Volume_Up}" ; volume up 7 F14::Send "{Volume_Mute}" ; mute
Funciona con cualquier reproductor que escuche los eventos multimedia del sistema: Spotify, YouTube Music (PWA), AIMP, foobar2000, incluso el reproductor integrado de Windows.
⁉️🤔 Preguntas frecuentes
¿Por qué usar F13-F24 si AHK puede interceptar los clics del ratón directamente?
AHK distingue los botones del ratón como
XButton1yXButton2; eso son solo dos botones extra. Los ratones gaming pueden tener de 8 a 12, y el controlador sigue actuando como intermediario. La cadena «controlador → F13-F24 → AHK» escala a cualquier número de botones, y el controlador no intenta ejecutar la acción por sí mismo; simplemente envía el código de tecla. Si el script de AHK falla, los botones del ratón dejarán de hacer cualquier cosa en lugar de empezar a ejecutar macros inesperadas desde el controlador.
¿Funciona el método en Windows 11?
Sí. F13-F24 son códigos de escaneo HID USB estándar; no están vinculados a una versión de Windows. AHK v2.0 soporta oficialmente Windows 10 y 11. En versiones ARM de Windows (Surface Pro X), algunos controladores de ratón pueden no emitir teclas virtuales, pero Logitech G Hub y Razer Synapse funcionan sin problemas.
¿Qué pasa si el controlador del ratón no permite asignar F13-F24?
Algunos ratones de oficina con software recortado están limitados a F1-F12. Dos opciones: pruebe la utilidad X-Mouse Button Control, que puede asignar F13-F24 independientemente del modelo de ratón, o use
XButton1/XButton2directamente en AHK. Solo dos botones, pero suficiente para empezar.
¿Se puede transferir el script a otro ordenador?
Sí. Copie el archivo
mouse.ahky la carpeta con AutoHotkey Portable (disponible en el sitio web oficial). Reasigne los botones en el controlador del ratón en el nuevo PC a las mismas teclas F; todo funcionará sin cambios en el código del script.
¿AHK ralentiza el sistema?
En reposo, AHK consume menos de 5 MB de RAM y 0% de CPU; la documentación oficial confirma una huella mínima. El hook se activa solo cuando se presiona una tecla monitorizada; el resto del tiempo el script duerme. A modo de comparación, el software propietario Razer Central «pesa» entre 200 y 400 MB en reposo.
¿Vale la pena el esfuerzo?
La configuración inicial lleva unos 20 minutos: vincular botones en el controlador, copiar fragmentos, ajustar los números de las teclas F a su gusto. Después, el script vive durante años y se traslada de ordenador en ordenador junto con el resto de su configuración. Dos beneficios.
Primero: ahorrar micromovimientos. Cerrar una pestaña sin Ctrl+W (una pulsación en lugar de dos), cambiar de pestaña sin Ctrl+Tab, el selector de color en Photoshop sin levantar el lápiz de la tableta. Cientos de operaciones se acumulan a lo largo del día, cada una trivial por sí sola, que en conjunto suman horas a lo largo de un año.
Segundo: el efecto «magia». Cuando un colega mira su pantalla y no entiende cómo cambia usted entre ventanas sin tocar el teclado, causa impresión. Detrás no hay magia, solo 40 líneas de AHK y media hora de configuración.
Si trabaja con ratón más de 6 horas al día, configure los botones. La primera semana se siente extraña, la segunda resulta cómoda, y al cabo de un mes dejará de entender cómo vive la gente sin ello.
Aquí tiene un video que recorre el método desde la instalación hasta el primer script:



