
🖱 Comment remapper les boutons de la souris avec AutoHotkey et accélérer votre flux de travail
Vous avez acheté une souris avec des boutons supplémentaires, mais vous n’utilisez que les boutons gauche, droit et la molette. Les boutons sous votre pouce restent inactifs, alors qu’ils pourraient fermer des onglets, basculer entre eux, dupliquer des clics et ouvrir les outils de développement. Mois après mois, vous tendez la main vers le clavier pour des raccourcis que la souris pourrait gérer seule.
Le problème ne vient pas d’une «mauvaise» souris. Le problème, c’est que le logiciel fourni par le fabricant ne peut pas associer des actions complexes à un bouton, ou qu’il rencontre des bugs lorsque la fenêtre active change. La solution consiste à envoyer des signaux «vides» depuis les boutons et à les intercepter avec un script qui comprend le contexte applicatif.
💡 Aperçu rapide:
- Attribuez les touches virtuelles F13 à F24 aux boutons supplémentaires de la souris via le pilote: elles ne font rien dans le système, mais le script les «entend»
- Installez AutoHotkey et écrivez un script: chaque application reçoit son propre jeu d’actions, de la fermeture d’un onglet au maintien de la touche Alt dans Photoshop
- Utilisez Window Spy pour vous connecter à n’importe quel fichier exe: la méthode fonctionne dans les navigateurs, les éditeurs de code, les lecteurs vidéo, partout
Qu’est-ce qu’AutoHotkey et pourquoi votre souris en a besoin
AutoHotkey (AHK) est un langage d’automatisation gratuit et open source pour Windows. Il peut intercepter les pressions de touches et les clics de souris, envoyer des combinaisons arbitraires à la fenêtre active et distinguer les applications par le nom de leur exécutable. Cette dernière fonctionnalité en fait la couche idéale entre le matériel «bête» et le logiciel: le même bouton de souris produit des actions différentes dans Chrome, Photoshop et sur le bureau.
Au moment où nous écrivons ces lignes, la version actuelle est AHK v2.0, qui est plus rapide, plus stricte sur la syntaxe et a supprimé les commandes obsolètes comme #NoEnv. Les scripts ci-dessous sont écrits pour la v2, mais la logique est transposable à la v1 (cette dernière est toujours prise en charge pour la rétrocompatibilité).
Une alternative sans script est XMBC (X-Mouse Button Control), un utilitaire doté d’une interface graphique. Il distingue également les applications, prend en charge jusqu’à 10 couches par profil et ne nécessite aucun code. L’inconvénient: une portabilité nulle entre ordinateurs, et les capacités sont limitées à ce que le développeur a intégré. AHK est plus flexible, et le script peut être copié avec le reste de vos paramètres système.
Étape 1: associer les boutons aux touches virtuelles F13 à F24
Les touches de fonction classiques (F1 à F12) sont déjà prises; elles déclenchent une action dans chaque application. Mais Windows connaît également les touches F13 à F24, de véritables codes de balayage qu’aucun programme n’intercepte par défaut. Elles sont idéales comme «leurres»: le pilote de la souris envoie F15 au système, et le système ne la transmet à personne, sauf à notre script AHK.
Association via le pilote de la souris
Ouvrez le logiciel propriétaire de votre souris: Logitech G Hub, Razer Synapse, SteelSeries Engine ou un outil universel. Trouvez l’onglet d’attribution des boutons et, pour chaque bouton supplémentaire, choisissez «Attribuer une frappe de touche» ou «Attribution de frappe». Saisissez F13, F14, F15…, une par bouton. Ne vous inquiétez pas que les touches F13 à F24 n’existent pas physiquement sur le clavier: le pilote enverra le code de balayage et Windows l’acceptera.
Comment «appuyer» sur F15 si une telle touche n’existe pas? Enregistrez cet extrait AHK dans un fichier nommé send.ahk et exécutez-le:
1 ; send.ahk — emulates pressing F15 after 5 seconds 2 Sleep 5000 3 Send "{F15}" 4 ExitApp
Exécutez-le, basculez rapidement vers la fenêtre du pilote de la souris, cliquez dans le champ «Attribuer une frappe de touche», et après 5 secondes, AHK enverra F15 et le pilote l’enregistrera. Répétez l’opération pour chaque bouton, en changeant le numéro de la touche F.

Étape 2: installer AutoHotkey et créer un script de base
Téléchargez AHK depuis le site officiel (choisissez la version v2.0). Après l’installation, créez un fichier texte avec l’extension .ahk, par exemple mouse.ahk. En-tête de script de base:
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
Détail: SendMode "Input" est la méthode la plus rapide et la plus fiable pour envoyer des frappes; SetTitleMatchMode 2 recherche une sous-chaîne dans le titre de la fenêtre (une partie du nom suffit); #InstallMouseHook active l’interception bas niveau des boutons de la souris.
Démarrage automatique au lancement de Windows
Appuyez sur Win+R, tapez shell:startup, et le dossier de démarrage s’ouvrira. Maintenez Alt et faites glisser mouse.ahk dans ce dossier: un raccourci sera créé. Le script se lancera avec le système. Il est pratique d’éditer les fichiers .ahk dans Sublime Text ou Notepad++, qui proposent tous deux une coloration syntaxique pour AHK.
Étape 3: écrire un script pour le navigateur
Le navigateur est un terrain d’essai pour les boutons de la souris. Voici une configuration couvrant les principales actions de navigation:
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
Copiez ce bloc dans mouse.ahk, en remplaçant les numéros de touches F par ceux que vous avez attribués dans le pilote. Après avoir enregistré le fichier, appuyez sur Ctrl+R (Recharger le script) depuis le menu de la barre d’état système AHK; les nouvelles associations fonctionneront instantanément, sans redémarrer le navigateur.
#HotIf limite la portée du bloc; les boutons ne fonctionnent que lorsque Chrome ou Edge est au premier plan. Passez dans l’Explorateur de fichiers, et ces mêmes touches F14 à F23 pourront faire autre chose, ou rien du tout.
Étape 4: script pour Photoshop et une tablette graphique
Un exemple plus complexe: Photoshop, où les boutons ne se contentent pas d’envoyer une combinaison, mais maintiennent une touche modificatrice. C’est extrêmement utile lorsque vous travaillez avec un stylet Wacom; les boutons du stylet activent la pipette à couleurs et le déplacement du canevas:

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
Notez la construction F14:: avec accolades; il s'agit d'un raccourci multi-ligne. GetKeyState("Alt") empêche de maintenir la touche modificatrice de façon répétée si le bouton a des soubresauts. F14 Up:: se déclenche au relâchement et remet Alt dans son état d'origine.
La même approche s'applique à tout logiciel nécessitant des modificateurs: Figma (Espace pour la main de déplacement), Blender (Shift pour un mouvement précis), DaVinci Resolve (Alt pour copier un clip).
Étape 5: actions globales par défaut
Lorsqu'aucune des applications n'est active, les boutons déclenchent quelque chose d'universel:
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)
Le double-clic sur un seul bouton est un favori personnel de l'auteur de la méthode originale. Après une semaine d'utilisation, un double-clic physique devient déroutant: pourquoi appuyer deux fois quand on peut appuyer une seule fois?
Alternative sans code: X-Mouse Button Control
Si les scripts ne sont pas votre voie, envisagez X-Mouse Button Control (XMBC). C'est un utilitaire gratuit avec une interface graphique qui fait la même chose: des profils pour des fichiers .exe spécifiques, jusqu'à 10 couches par profil, changement de couche via un raccourci clavier.
Avantages de XMBC: s'installe en une minute, la configuration consiste à sélectionner une action dans une liste déroulante, aucun code requis. Inconvénients: moins de flexibilité (vous ne pouvez pas écrire une condition avec GetKeyState), et la configuration réside dans le registre et survit rarement à un transfert vers un autre ordinateur. Pour les scénarios de base («fermer l'onglet», «changer de piste»), un excellent choix. Pour les constructions multi-niveaux avec des modificateurs maintenus, seul AHK fera l'affaire.
Comment cibler n'importe quelle application avec Window Spy
Pour ajouter la prise en charge d'un nouveau programme, vous devez connaître le nom de son fichier exécutable. Dans la barre des tâches, faites un clic droit sur l'icône AHK et sélectionnez Window Spy. Cliquez sur la fenêtre du programme cible; Window Spy affichera:
- Window Title, le titre de la fenêtre (vous pouvez cibler par ce biais)
- ahk_exe, le nom du processus (par exemple
firefox.exeoucode.exeounotion.exe) - ahk_class, la classe de la fenêtre (utile pour distinguer les boîtes de dialogue au sein d'une application)
Ajoutez un nouveau bloc à mouse.ahk:
1 #HotIf WinActive("ahk_exe firefox.exe") 2 F14::Send "^w" 3 ; ... your actions 4 #HotIf
Enregistrez, Ctrl+R pour recharger le script, terminé. La technique est universelle: lecteurs vidéo (VLC, PotPlayer), messageries (Telegram, Discord), IDE (VS Code, PhpStorm), gestionnaires de fichiers, tout ce qui a un .exe.
Bonus: contrôler la musique avec les touches média globales
Si votre clavier n'a pas de boutons multimédia, la souris peut les remplacer. Les actions suivantes sont globales et ne nécessitent pas de détecter la fenêtre du lecteur:
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
Fonctionne avec tout lecteur qui écoute les événements média du système: Spotify, YouTube Music (PWA), AIMP, foobar2000, et même le lecteur intégré de Windows.
⁉️🤔 Foire aux questions
Pourquoi utiliser F13-F24 si AHK peut intercepter directement les clics de souris?
AHK distingue les boutons de souris comme
XButton1etXButton2; cela ne fait que deux boutons supplémentaires. Les souris gaming peuvent en avoir 8 à 12, et le pilote sert toujours d’intermédiaire. La chaîne «pilote → F13-F24 → AHK» s’adapte à n’importe quel nombre de boutons, et le pilote ne cherche pas à exécuter l’action lui-même; il se contente d’envoyer le code de touche. Si le script AHK plante, les boutons de la souris cesseront simplement de fonctionner au lieu de déclencher des macros inattendues depuis le pilote.
La méthode fonctionne-t-elle sous Windows 11?
Oui. Les touches F13-F24 sont des codes de scan USB HID standard; elles ne sont pas liées à une version de Windows. AHK v2.0 prend officiellement en charge Windows 10 et 11. Sur les versions ARM de Windows (Surface Pro X), certains pilotes de souris peuvent ne pas émettre de touches virtuelles, mais Logitech G Hub et Razer Synapse fonctionnent sans problème.
Que faire si le pilote de la souris ne permet pas d’assigner F13-F24?
Certaines souris bureautiques avec un logiciel allégé sont limitées aux touches F1-F12. Deux options: essayez l’utilitaire X-Mouse Button Control, qui peut assigner F13-F24 quel que soit le modèle de souris, ou utilisez directement
XButton1/XButton2dans AHK. Seulement deux boutons, mais suffisants pour débuter.
Le script peut-il être transféré sur un autre ordinateur?
Oui. Copiez le fichier
mouse.ahket le dossier contenant AutoHotkey Portable (disponible sur le site officiel). Réassignez les boutons dans le pilote de la souris sur le nouveau PC vers les mêmes touches F; tout fonctionnera sans modifier le code du script.
AHK ralentit-il le système?
Au repos, AHK consomme moins de 5 Mo de RAM et 0% de CPU; la documentation officielle confirme une empreinte minimale. Le hook ne se déclenche que lorsqu’une touche surveillée est pressée; le reste du temps, le script est en veille. À titre de comparaison, le logiciel propriétaire Razer Central «pèse» 200 à 400 Mo au repos.
Cela en vaut-il la peine
La configuration initiale prend environ 20 minutes: assigner les boutons dans le pilote, copier les extraits de code, ajuster les numéros de touches F selon vos préférences. Ensuite, le script vit pendant des années et passe d’un ordinateur à l’autre avec le reste de votre configuration. Deux bénéfices.
Premièrement: l’économie de micro-mouvements. Fermer un onglet sans Ctrl+W (une pression au lieu de deux), changer d’onglet sans Ctrl+Tab, la pipette dans Photoshop sans lever le stylet de la tablette. Des centaines d’opérations s’accumulent sur une journée, chacune anodine en soi, mais qui, mises bout à bout, représentent des heures sur une année.
Deuxièmement: l’effet «magique». Quand un collègue regarde votre écran et ne comprend pas comment vous passez d’une fenêtre à l’autre sans toucher au clavier, cela fait son effet. Derrière cela, aucune magie, juste 40 lignes de AHK et une demi-heure de configuration.
Si vous travaillez avec une souris plus de 6 heures par jour, configurez les boutons. La première semaine paraît inhabituelle, la deuxième devient confortable, et après un mois vous ne comprendrez plus comment les gens peuvent s’en passer.
Voici une vidéo qui présente la méthode, de l’installation au premier script:



