- O que é o AutoHotkey
- Porque utilizo o AutoHotkey
- Os meus principais scripts AutoHotkey
- 1. Abrir o Windows Terminal
- 2. Controlar o volume com o rato
- 3. Mudar de separador
- 4. Mover janelas e ambientes de trabalho virtuais
- 5. Controlar o volume com o teclado numérico
- Explicação dos comandos AutoHotkey utilizados
- Vantagens do AutoHotkey
- Dicas úteis para começar
- Perguntas frequentes sobre o AutoHotkey
Há vários anos que utilizo em todos os meus computadores e portáteis uma ferramenta que facilita enormemente o meu trabalho diário: o AutoHotkey. Descobri-a por acaso enquanto procurava uma alternativa ao Logitech Options, o software oficial para personalizar as funções dos botões dos meus Logitech MX Master 3 e MX Master 3S (*).
Embora o Logitech Options disponibilize muitas funções, o programa era demasiado pesado. Tinha de o instalar em todos os dispositivos apenas para utilizar os botões do rato como habitualmente. Também provocava problemas em algumas aplicações, como o DaVinci Resolve: os atalhos só funcionavam corretamente depois de fechar completamente o software da Logitech. Por isso, procurei uma solução mais flexível e encontrei o AutoHotkey.
O que é o AutoHotkey
O AutoHotkey (AHK) é um programa gratuito e de código aberto para Windows que permite criar comandos próprios para o teclado e o rato. É essencialmente uma linguagem de scripts que automatiza as entradas do Windows. Permite:
- criar atalhos para o teclado e o rato
- executar ações complexas com uma única tecla
- completar textos automaticamente
- iniciar programas ou posicionar janelas
- integrar controlos multimédia para volume ou reprodução
A principal vantagem é não ficar limitado a um modelo específico de rato ou teclado. Enquanto o Logitech Options funciona apenas com dispositivos Logitech, o AutoHotkey suporta praticamente qualquer rato, teclado e até comandos de jogos.
Porque utilizo o AutoHotkey
Utilizo o AutoHotkey tanto a nível pessoal como profissional, sobretudo para trabalhar de forma mais produtiva. Configurei o rato e o teclado para executar várias funções mais rapidamente sem manter software adicional em segundo plano.
Por exemplo, controlo o volume diretamente com os botões laterais do rato ou mudo de separador no Firefox e no Explorador do Windows através de uma combinação de botões.
No teclado, um simples atalho abre o Windows Terminal normalmente ou como administrador. Também posso regular o volume em passos de 10 % com o teclado numérico.
Guardo o script na pasta de arranque automático do Windows para que seja executado quando o computador inicia. Pode abrir rapidamente essa pasta através de shell:startup.
Os meus principais scripts AutoHotkey
Pode descarregar o script completo aqui, copiá-lo do Pastebin ou utilizar esta ligação com publicidade.
1. Abrir o Windows Terminal
Abro o Windows Terminal com CTRL+ALT+T e inicio-o diretamente com permissões de administrador através de CTRL+ALT+SHIFT+T:
; Windows Terminal
; STRG+ALT
^!T::
WinActivate Program Manager ; desktop
RUN wt.exe
return
; Windows Terminal Elevated/Admin User
; STRG+ALT+SHIFT
^!+T::
WinActivate Program Manager ; desktop
RUN *RunAs wt.exe
return
2. Controlar o volume com o rato
Os botões laterais do meu rato Logitech estão configurados para controlar o volume:
; Mouse Forward - Volume Up
XButton2::
Send {Volume_Up}
; SoundSet,+5 ;Volume +5
; while(GetKeyState("XButton2","P")){
; Send {Volume_Up}
; Sleep, 100
; }
return
; Mouse Back - Volume Down
XButton1::
Send {Volume_Down}
; SoundSet,-5 ;Volume -5
return
3. Mudar de separador
Ao manter o botão lateral premido e clicar com o botão esquerdo ou direito, posso percorrer os separadores para a frente ou para trás:
; Mouse Thumb Forward - Tab Right
XButton2 & LButton::
while(GetKeyState("XButton2","P") && GetKeyState("LButton","P")){
Send ^+{Tab}
Sleep, 400
}
return
; Mouse Thumb Forward - Tab Left
XButton2 & RButton::
while(GetKeyState("XButton2","P") && GetKeyState("RButton","P")){
Send ^{Tab}
Sleep, 400
}
return
; Mouse Thumb Forward - Reload
XButton2 & MButton::
Send ^R
return
; Mouse Thumb Back - Close Tab
XButton1 & MButton::
;Send ^W
Send ^{F4}
return
4. Mover janelas e ambientes de trabalho virtuais
A roda e os botões laterais permitem mover janelas ou mudar de ambiente de trabalho:
; Mouse Thumb Back - Virtual Desktop Left
XButton1 & LButton::
Send #^{LEFT}
return
; Mouse Thumb Back - Virtual Desktop Right
XButton1 & RButton::
Send #^{Right}
return
; Wheel Up - Move Window Left
XButton2 & WheelUp::
Send #{LEFT}
return
; Wheel Down - Move Window Right
XButton2 & WheelDown::
Send #{RIGHT}
return
; Wheel Up - Zoom in
XButton1 & WheelUp::
Send ^{WheelUp}
return
; Wheel Down - Zoom out
XButton1 & WheelDown::
Send ^{WheelDown}
return
5. Controlar o volume com o teclado numérico
Com WIN+CTRL+TECLADO NUMÉRICO posso ajustar o volume em passos de 10:
#^Numpad0::
SoundSet,0 ; set Volume to 0
Send {Volume_Mute} ; Volume mute
; SoundSet,0 ; Volume mute
return
#^Numpad1::
Send {Volume_Up} ; damit das Volume overlay angezeigt wird
SoundSet,10 ; set Volume to 10
return
#^Numpad2::
Send {Volume_Up} ; damit das Volume overlay angezeigt wird
SoundSet,20 ; set Volume to 20
return
#^Numpad3::
Send {Volume_Up} ; damit das Volume overlay angezeigt wird
SoundSet,30 ; set Volume to 30
return
#^Numpad4::
Send {Volume_Up} ; damit das Volume overlay angezeigt wird
SoundSet,40 ; set Volume to 30
return
#^Numpad5::
Send {Volume_Up} ; damit das Volume overlay angezeigt wird
SoundSet,50 ; set Volume to 30
return
#^Numpad6::
Send {Volume_Up} ; damit das Volume overlay angezeigt wird
SoundSet,60 ; set Volume to 30
return
#^Numpad7::
Send {Volume_Up} ; damit das Volume overlay angezeigt wird
SoundSet,70 ; set Volume to 30
return
#^Numpad8::
Send {Volume_Up} ; damit das Volume overlay angezeigt wird
SoundSet,80 ; set Volume to 30
return
#^Numpad9::
Send {Volume_Up} ; damit das Volume overlay angezeigt wird
SoundSet,90 ; set Volume to 30
return
Explicação dos comandos AutoHotkey utilizados
Para compreender melhor como os scripts funcionam, vale a pena analisar brevemente os principais comandos AutoHotkey que utilizo. Muitos são fáceis de entender quando se conhece a respetiva função:
#SingleInstance Force
Este comando impede a abertura de uma segunda instância ao iniciar um script. Se o script já estiver em execução, é reiniciado automaticamente, o que é útil ao testar ou alterar o código.#NoEnv
Impede a importação de variáveis de ambiente antigas do Windows. Desta forma, os scripts funcionam de modo mais estável e rápido, sobretudo em sistemas modernos.^,!,+,#
Estes símbolos representam teclas modificadoras:^= Ctrl (Control)!= Alt+= Shift#= Tecla Windows
Por exemplo,^!Trepresenta a combinação Ctrl + Alt + T.
Send
É o comando mais importante do AutoHotkey. Simula pressões de teclas ou cliques do rato. Exemplo:Send {Volume_Up}aumenta o volume como se premisse a tecla correspondente no teclado.Run
Inicia um programa ou abre um ficheiro. Por exemplo,Run wt.exeabre o Windows Terminal.
Em conjunto com*RunAs, permite iniciar o programa com permissões de administrador.GetKeyState()
Verifica se uma determinada tecla está a ser mantida premida. Isto permite criar combinações, por exemplo manter dois botões do rato premidos em simultâneo para mudar de separador.Sleep
Adiciona uma pequena pausa entre comandos, normalmente em milissegundos. Por exemplo,Sleep, 400aguarda 0,4 segundos antes de executar o comando seguinte. Isto evita que os comandos sejam executados demasiado depressa.SoundSet
Controla diretamente o volume do sistema. Pode definir valores fixos, comoSoundSet,50para 50 % de volume, ou aumentá-lo e diminuí-lo gradualmente.WinActivate
Ativa uma determinada janela antes da execução de um comando. É útil para garantir que o script interage com o programa correto.
Estes comandos constituem a base de quase todos os scripts AutoHotkey. Com alguma prática, permitem criar automatizações complexas, desde simples atalhos até fluxos de trabalho completos para Windows.
Vantagens do AutoHotkey
- Funciona em qualquer computador Windows, independentemente do fabricante do rato ou teclado
- Não requer início de sessão numa conta ou na nuvem
- Os scripts podem ser facilmente exportados e utilizados noutros dispositivos
- Sem processos em segundo plano ou telemetria
- Carga da CPU e consumo de memória muito reduzidos
- Ideal para utilizadores avançados, programadores e jogadores
Dicas úteis para começar
- Testar scripts: abra o ficheiro .ahk com um duplo clique e confirme se tudo funciona como pretende.
- Configurar o arranque automático: coloque o script em
shell:startuppara o ativar sempre que o Windows iniciar. - Ajuda de sintaxe: o AutoHotkey possui uma documentação excelente para consultar como implementar as suas próprias ideias.
- Nota de segurança: descarregue scripts apenas de fontes fiáveis, uma vez que o AHK pode automatizar pressões de teclas.
Perguntas frequentes sobre o AutoHotkey
1. O AutoHotkey é seguro?
Sim, o AutoHotkey é seguro e mantido por uma grande comunidade. No entanto, utilize apenas scripts de fontes fiáveis, pois estes podem simular pressões de teclas.
2. O AutoHotkey funciona apenas com determinados ratos ou teclados?
Não, o AutoHotkey funciona com praticamente qualquer rato e teclado, independentemente do fabricante. Esta é uma das suas maiores vantagens em relação a ferramentas como o Logitech Options ou o Razer Synapse.
3. Posso utilizar o AutoHotkey sem conhecimentos de programação?
Sim. Muitos scripts têm apenas algumas linhas de código. Para criar atalhos simples bastam conhecimentos básicos, e a documentação oficial explica claramente todos os comandos.
4. O AutoHotkey também funciona no Windows 11?
Sim, o AutoHotkey funciona sem problemas no Windows 10 e no Windows 11. É totalmente compatível e atualizado regularmente.
5. Como posso executar automaticamente o meu script ao iniciar o Windows?
Copie o ficheiro .ahk para a pasta de arranque automático (shell:startup). O script será iniciado automaticamente após reiniciar.
6. O AutoHotkey pode substituir completamente o Logitech Options?
Na maioria dos casos, sim. A atribuição dos botões do rato, os atalhos, o controlo de janelas e os controlos multimédia podem ser facilmente reproduzidos em diferentes dispositivos. Apenas as funções específicas do hardware, como o estado da bateria ou o Logitech Flow, continuam reservadas à Logitech.
7. Qual é a diferença entre Send e SendInput?
Ambos os comandos enviam pressões de teclas, mas o SendInput funciona de forma mais rápida e fiável em aplicações modernas. O Send é normalmente suficiente para automatizações simples.
8. Como posso terminar ou reiniciar scripts?
Um script AutoHotkey em execução aparece na área de notificação. Clique com o botão direito para selecionar Pause, Reload ou Exit.
9. Posso executar vários scripts em simultâneo?
Sim, pode executar quantos scripts quiser em paralelo. Se combinar muitas funções, normalmente é mais claro reunir tudo num único script.
10. Onde posso encontrar mais ideias e exemplos?
O site oficial do AutoHotkey contém inúmeros exemplos e uma comunidade ativa onde os utilizadores partilham os seus scripts. Encontrará inspiração para praticamente qualquer utilização, desde macros para jogos até automatizações de escritório.
(*) Ligações de afiliado
Este artigo foi traduzido com a ajuda de IA.



