
🖱 Jak przypisać przyciski myszy przez AutoHotkey i przyspieszyć pracę
Kupili Państwo mysz z dodatkowymi przyciskami, a używają tylko lewego, prawego i kółka. Przyciski pod kciukiem stoją bezczynnie, choć mogłyby zamykać karty, przełączać się między nimi, duplikować kliknięcie i otwierać narzędzia deweloperskie. Miesiąc za miesiącem sięgają Państwo po klawiaturę w poszukiwaniu skrótów, które mysz mogłaby wykonywać sama.
Problem nie leży w „niewłaściwej" myszy. Problem polega na tym, że standardowe oprogramowanie producenta albo nie pozwala przypisać do przycisku złożonej akcji, albo szwankuje przy zmianie aktywnego okna. Rozwiązanie: wysłać z przycisków „puste" sygnały i przechwycić je skryptem, który rozumie kontekst aplikacji.
💡 Szybki przegląd:
- Przypisujemy dodatkowym przyciskom myszy wirtualne klawisze F13-F24 przez sterownik: nie robią one nic w systemie, ale skrypt je „słyszy"
- Instalujemy AutoHotkey i piszemy skrypt: dla każdej aplikacji własny zestaw akcji, od zamykania karty po przytrzymywanie Alt w Photoshopie
- Przez Window Spy podczepiamy się do dowolnego pliku exe: metoda działa w przeglądarce, edytorze kodu, odtwarzaczu wideo, wszędzie
Czym jest AutoHotkey i do czego służy myszy
AutoHotkey (AHK) to darmowy, otwartoźródłowy język automatyzacji dla Windows. Potrafi przechwytywać naciśnięcia klawiszy i przycisków myszy, wysyłać dowolne kombinacje do aktywnego okna oraz rozróżniać aplikacje po nazwie pliku wykonywalnego. To właśnie ta ostatnia cecha czyni go idealną warstwą pośrednią między „tępym" sprzętem a oprogramowaniem: ten sam przycisk myszy robi co innego w Chrome, Photoshopie i na pulpicie.
W chwili pisania tego tekstu aktualna wersja to AHK v2.0, jest szybsza, bardziej rygorystyczna składniowo i pozbyła się przestarzałych poleceń, takich jak #NoEnv. Poniższe skrypty są napisane pod v2, ale logikę można przenieść również na v1 (wciąż jest wspierana dla zachowania kompatybilności wstecznej).
Alternatywa bez skryptów: narzędzie XMBC (X-Mouse Button Control) z interfejsem graficznym. Ono również rozróżnia aplikacje, obsługuje do 10 warstw na profil i nie wymaga ani jednej linii kodu. Minus: zerowa przenośność między komputerami, a możliwości są ograniczone do tego, co przewidział twórca. AHK jest bardziej elastyczny, skrypt kopiuje się razem z innymi ustawieniami systemu.
Krok 1: przypisujemy przyciski do wirtualnych klawiszy F13-F24
Zwykłe klawisze funkcyjne (F1-F12) są zajęte, robią coś w każdej aplikacji. Ale Windows zna również F13-F24, to realnie istniejące kody skanowania, na które domyślnie żaden program nie wiesza obsługi. Są idealne jako „wydmuszki": sterownik myszy wysyła do systemu F15, system nie przekazuje go nikomu poza naszym skryptem AHK.
Przypisanie przez sterownik myszy
Proszę otworzyć firmowe oprogramowanie Państwa myszy: Logitech G Hub, Razer Synapse, SteelSeries Engine lub uniwersalne. Proszę znaleźć zakładkę przypisywania przycisków i dla każdego dodatkowego przycisku wybrać „Przypisz klawisz" lub „Keystroke assignment". Proszę wpisać F13, F14, F15…, po jednym na każdy przycisk. Proszę się nie obawiać, że fizycznie klawiszy F13-F24 na klawiaturze nie ma: sterownik wyśle kod skanowania, a Windows go przyjmie.
Jak „nacisnąć" F15, skoro takiego przycisku nie ma? Proszę zapisać ten skrawek AHK do pliku send.ahk i uruchomić:
1 ; send.ahk — эмулирует нажатие F15 через 5 секунд 2 Sleep 5000 3 Send "{F15}" 4 ExitApp
Proszę uruchomić, szybko przełączyć się do okna sterownika myszy, kliknąć w pole „Przypisz klawisz", po 5 sekundach AHK wyśle F15, a sterownik go zarejestruje. Proszę powtórzyć dla każdego przycisku, zmieniając numer klawisza F.

Krok 2: instalujemy AutoHotkey i tworzymy podstawowy skrypt
Proszę pobrać AHK z oficjalnej strony (proszę wybrać wersję v2.0). Po instalacji proszę utworzyć plik tekstowy z rozszerzeniem .ahk, na przykład mouse.ahk. Podstawowy nagłówek skryptu:
1 ; mouse.ahk — базовая настройка AHK v2 2 #Requires AutoHotkey v2.0 3 SendMode "Input" 4 SetWorkingDir A_ScriptDir 5 SetTitleMatchMode 2 6 #MaxHotkeysPerInterval 300 7 #InstallMouseHook
Omówienie: SendMode "Input", najszybsza i najbardziej niezawodna metoda wysyłania naciśnięć; SetTitleMatchMode 2, szuka podciągu w tytule okna (wystarczy część nazwy); #InstallMouseHook, aktywuje przechwytywanie przycisków myszy na niskim poziomie.
Autostart przy starcie Windows
Proszę nacisnąć Win+R, wpisać shell:startup, otworzy się folder autostartu. Proszę przytrzymać Alt i przeciągnąć mouse.ahk do tego folderu: utworzy się skrót. Skrypt będzie uruchamiany razem z systemem. Edytować plik .ahk wygodnie jest w Sublime Text lub Notepad++, oba podświetlają składnię AHK.
Krok 3: piszemy skrypt dla przeglądarki
Przeglądarka to poligon dla przycisków myszy. Oto układ pokrywający główne czynności nawigacyjne:
1 ; Chrome / любой браузер на Chromium 2 #HotIf WinActive("ahk_exe chrome.exe") or WinActive("ahk_exe msedge.exe") 3 ; Ctrl+W = закрыть вкладку 4 F14::Send "^w" 5 ; Ctrl+Shift+C = инструменты разработчика (inspect element) 6 F22::Send "^+c" 7 ; Ctrl+PageDown = следующая вкладка 8 F16::Send "^{PgDn}" 9 ; Ctrl+PageUp = предыдущая вкладка 10 F17::Send "^{PgUp}" 11 ; Alt+Left = назад по истории 12 F18::Send "!{Left}" 13 ; F5 = перезагрузить вкладку 14 F20::Send "{F5}" 15 ; Ctrl+Shift+T = восстановить закрытую вкладку 16 F23::Send "^+t" 17 #HotIf
Proszę skopiować blok do mouse.ahk, zastępując numery klawiszy F tymi, które przypisali Państwo w sterowniku. Po zapisaniu pliku proszę nacisnąć Ctrl+R (Reload script) z menu zasobnika AHK, nowe przypisania zaczną działać natychmiast, bez ponownego uruchamiania przeglądarki.
#HotIf ogranicza działanie bloku, przyciski działają tylko wtedy, gdy Chrome lub Edge jest na fokusie. Po przełączeniu do eksploratora plików te same F14-F23 mogą robić co innego albo nic.
Krok 4: skrypt dla Photoshopa i tabletu graficznego
Przykład trudniejszy: Photoshop, gdzie przyciski nie tylko wysyłają skrót, ale przytrzymują klawisz modyfikatora. Jest to niezastąpione podczas pracy z piórem Wacom, przyciski na piórze włączają kroplomierz koloru i przeciąganie płótna:

1 ; Adobe Photoshop 2 #HotIf WinActive("ahk_exe photoshop.exe") 3 ; Удерживать Alt = пипетка цвета (пока кнопка нажата) 4 F14:: 5 { 6 if !GetKeyState("Alt") 7 Send "{Alt down}" 8 } 9 F14 Up::Send "{Alt up}" 10 11 ; Alt+Ctrl+Z = шаг назад (вместо простого Undo) 12 F16::Send "!^z" 13 14 ; Shift+Ctrl+Z = шаг вперёд 15 F17::Send "+^z" 16 17 ; Удерживать Space = перетаскивание холста 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 = сохранить 26 F19::Send "^s" 27 28 ; Ctrl+N = новый документ 29 F20::Send "^n" 30 31 ; Alt+Shift+Ctrl+S = Export → Save for Web 32 F23::Send "!+^s" 33 #HotIf
Proszę zwrócić uwagę na konstrukcję F14:: z nawiasami klamrowymi, to wielowierszowy hotkey. GetKeyState("Alt") zabezpiecza przed ponownym wciśnięciem modyfikatora, jeśli klawisz zadrżał. F14 Up:: uruchamia się przy puszczeniu, przywracając Alt do pierwotnego stanu.
To samo podejście można zastosować w każdym oprogramowaniu, gdzie potrzebne są modyfikatory: Figma (Spacja do przeciągania obszaru roboczego), Blender (Shift do precyzyjnego przesuwania), DaVinci Resolve (Alt do kopiowania klipu).
Krok 5: globalne akcje domyślne
Gdy żadna z aplikacji nie jest aktywna, przyciski wykonują coś uniwersalnego:
1 ; Глобальные привязки (работают везде, где нет специфичного #HotIf) 2 F14::Send "{Backspace}" ; назад (аналог браузерной кнопки) 3 F15::Send "{Click 2}" ; двойной клик 4 F19::Send "{MButton}" ; средняя кнопка (удобнее чем жать на колёсико) 5 F21::Send "#d" ; Win+D = свернуть все окна (boss key)
Podwójne kliknięcie jednym przyciskiem, osobisty faworyt autora oryginalnej metody. Po tygodniu używania fizyczny podwójny klik wywołuje zdziwienie: po co stukać dwa razy, skoro można raz?
Alternatywa bez kodu: X-Mouse Button Control
Jeśli skrypty to nie Pana/Pani droga, proszę przyjrzeć się X-Mouse Button Control (XMBC). To bezpłatne narzędzie z interfejsem graficznym, które potrafi to samo: profile dla konkretnych .exe, do 10 warstw na profil, przełączanie warstw za pomocą skrótu klawiszowego.
Zalety XMBC: instaluje się w minutę, konfiguracja, wybór akcji z listy rozwijanej, nie trzeba edytować kodu. Wady: mniejsza elastyczność (nie można napisać warunku z GetKeyState), a konfiguracja żyje w rejestrze i rzadko przeżywa przenosiny na inny komputer. Do podstawowych scenariuszy („zamknij kartę", „przełącz utwór") to doskonały wybór. Do wielopoziomowych konstrukcji z przytrzymywaniem modyfikatorów, tylko AHK.
Jak nakierować skrypt na dowolną aplikację przez Window Spy
Aby dodać obsługę nowego programu, trzeba poznać nazwę jego pliku wykonywalnego. W zasobniku systemowym proszę kliknąć prawym przyciskiem ikonę AHK i wybrać Window Spy. Proszę kliknąć na okno docelowej aplikacji, Window Spy pokaże:
- Window Title, tytuł okna (można celować według niego)
- ahk_exe, nazwę procesu (na przykład
firefox.exelubcode.exelubnotion.exe) - ahk_class, klasę okna (przydatne do rozróżniania okien dialogowych wewnątrz aplikacji)
Proszę dodać nowy blok w mouse.ahk:
1 #HotIf WinActive("ahk_exe firefox.exe") 2 F14::Send "^w" 3 ; ... ваши действия 4 #HotIf
Proszę zapisać, Ctrl+R do przeładowania skryptu, gotowe. Sposób jest uniwersalny: odtwarzacze wideo (VLC, PotPlayer), komunikatory (Telegram, Discord), IDE (VS Code, PhpStorm), menedżery plików, wszystko, co ma .exe.
Bonus: sterowanie muzyką globalnymi klawiszami multimedialnymi
Jeśli na klawiaturze nie ma przycisków multimedialnych, mysz je zastąpi. Poniższe akcje są globalne i nie wymagają wykrywania okna odtwarzacza:
1 ; Управление медиа — работает всегда 2 F18::Send "{Media_Prev}" ; предыдущий трек 3 F19::Send "{Media_Play_Pause}" ; пауза / воспроизведение 4 F20::Send "{Media_Next}" ; следующий трек 5 F22::Send "{Volume_Down}" ; тише 6 F23::Send "{Volume_Up}" ; громче 7 F14::Send "{Volume_Mute}" ; выключить звук
Działa z każdym odtwarzaczem, który reaguje na systemowe zdarzenia multimedialne: Spotify, YouTube Music (PWA), AIMP, foobar2000, a nawet wbudowany odtwarzacz Windows.
⁉️🤔 Często zadawane pytania
Po co są F13-F24, skoro AHK może przechwytywać kliknięcia myszy bezpośrednio?
AHK rozróżnia przyciski myszy jako
XButton1iXButton2, to tylko dwa dodatkowe. W myszach gamingowych bywa ich 8-12, a sterownik i tak działa jako pośrednik. Zestawienie „sterownik → F13-F24 → AHK" skaluje się na dowolną liczbę przycisków, a sterownik nie próbuje samodzielnie wykonać akcji, tylko wysyła kod klawisza. Jeśli skrypt AHK się wyłoży, przyciski myszy po prostu przestaną cokolwiek robić, zamiast zacząć wykonywać nieoczekiwane makra ze sterownika.
Czy ta metoda działa w Windows 11?
Tak. F13-F24 to standardowe kody skanowania USB HID, nie są powiązane z wersją Windows. AHK v2.0 oficjalnie wspiera Windows 10 i 11. Na ARM-owych wersjach Windows (Surface Pro X) niektóre sterowniki myszy mogą nie udostępniać wirtualnych klawiszy, ale Logitech G Hub i Razer Synapse działają bez problemów.
Co zrobić, jeśli sterownik myszy nie pozwala przypisać F13-F24?
Niektóre myszy biurowe z okrojonym oprogramowaniem są ograniczone do F1-F12. Są dwie opcje: spróbować narzędzia X-Mouse Button Control, które potrafi przypisywać F13-F24 niezależnie od modelu myszy, albo użyć
XButton1/XButton2bezpośrednio w AHK. Tylko dwa przyciski, ale na początek wystarczy.
Czy można przenieść skrypt na inny komputer?
Tak. Proszę skopiować plik
mouse.ahki folder z AutoHotkey Portable (dostępny na oficjalnej stronie). Na nowym komputerze należy przypisać przyciski w sterowniku myszy do tych samych klawiszy F, wszystko zadziała bez zmian w kodzie skryptu.
Czy AHK spowalnia działanie systemu?
W stanie bezczynności AHK zużywa mniej niż 5 MB pamięci RAM i 0% procesora, oficjalna dokumentacja potwierdza minimalny footprint. Hak uruchamia się tylko przy naciśnięciu śledzonego klawisza, przez resztę czasu skrypt jest uśpiony. Dla porównania: firmowe oprogramowanie Razer Central w stanie bezczynności „waży" 200-400 MB.
Czy gra jest warta świeczki
Wstępna konfiguracja zajmuje około 20 minut: przypisać przyciski w sterowniku, skopiować snippety, dostosować numery klawiszy F do własnych potrzeb. Potem skrypt żyje latami i przenosi się z komputera na komputer razem z resztą konfiguracji. Zyski są dwa.
Pierwszy: oszczędność mikroruchów. Zamykanie karty bez Ctrl+W (jedno kliknięcie zamiast dwóch), przełączanie kart bez Ctrl+Tab, próbnik koloru w Photoshopie bez odrywania piórka od tabletu. W ciągu dnia zbierają się setki operacji, każda z osobna groszowa, razem dają godziny w skali roku.
Drugi: efekt „magii". Kiedy kolega patrzy na Pana/Pani ekran i nie rozumie, jak przełącza Pan/Pani okna bez dotykania klawiatury, robi to wrażenie. Nie stoi za tym magia, tylko 40 linii AHK i pół godziny konfiguracji.
Jeśli pracuje Pan/Pani z myszą ponad 6 godzin dziennie, proszę skonfigurować przyciski. Pierwszy tydzień jest dziwnie, drugi wygodnie, po miesiącu przestanie Pan/Pani rozumieć, jak ludzie bez tego żyją.
Oto wideo, w którym metoda jest omawiana od instalacji do pierwszego skryptu:



