AutoHotkey
A categorização deste artigo é deficiente. (Outubro de 2024) |
AutoHotkey é uma linguagem de script livre e de código aberto para Microsoft Windows, projetada principalmente para fornecer atalhos de teclado personalizados ou teclas de atalho, criação rápida de macros e automação de software, permitindo que usuários de qualquer nível de habilidade automatizem tarefas repetitivas em qualquer aplicativo do Windows. Ele pode facilmente estender ou modificar interfaces de usuário (por exemplo, substituindo os comandos padrão de tecla de controle do Windows por equivalentes do Emacs).[2] O pacote de instalação inclui um arquivo de ajuda extenso; documentação online também está disponível.[3]
Desenvolvedor | Chris Mallett, Steve Gray |
Sistema operacional | Microsoft Windows |
Gênero(s) | Linguagem de script Automação GUI utilitário |
Licença | GPLv2[1] |
Página oficial | www |
Recursos
editarOs scripts AutoHotkey podem ser usados para iniciar programas, abrir documentos e emular digitação ou cliques e movimentos do mouse.[4] Eles também podem atribuir, recuperar e manipular variáveis, executar loops e manipular janelas, arquivos e pastas. Eles podem ser acionados por um atalho de teclado, como um script que abre um navegador de internet quando o usuário pressiona Ctrl+Alt+I no teclado. As teclas do teclado também podem ser remapeadas e desativadas, por exemplo, para que pressionar Ctrl+M produza um travessão na janela ativa.[5] AutoHotkey também permite "hotstrings" que automaticamente substituem certos textos à medida que são digitados, como atribuir a string "dnv" para produzir o texto "de novo" ou o texto "%de" para produzir "porcentagem de".[6] Scripts também podem ser configurados para rodar automaticamente no início do sistema, sem ação do teclado – por exemplo, para realizar gerenciamento de arquivos em intervalos definidos.[7]
Tarefas mais complexas podem ser alcançadas com formulários de entrada de dados personalizados (janelas GUI), manipulação do registro do sistema ou uso da API do Windows chamando funções de DLLs. Os scripts podem ser compilados em arquivos executávels independentes que podem ser executados em outros computadores sem o AutoHotkey instalado. O código-fonte em C++ pode ser compilado com o Visual Studio Express.
AutoHotkey permite o acesso à memória por meio de ponteiros, como em C.[8]
Alguns usos do AutoHotkey:
- Remapear o teclado, como de QWERTY para Dvorak e outros layouts alternativos de layout do teclado
- Usar atalhos para digitar nomes de arquivos e frases frequentemente usados
- Digitar pontuação não disponível no teclado, como aspas curvas (“…”)
- Digitar outros caracteres não presentes no teclado, como o símbolo × usado para medidas dimensionais (por exemplo, 10′×12′)
- Controlar o cursor do mouse com um teclado ou joystick
- Abrir programas, documentos e sites com simples pressionamentos de tecla
- Adicionar uma assinatura para e-mail, fóruns da internet, etc.
- Monitorar um sistema e fechar automaticamente programas indesejados
- Agendar lembretes automáticos, varreduras do sistema ou backup
- Automatizar tarefas repetitivas
- Preencher formulários automaticamente
- Prototipar aplicações antes de implementá-las em outras linguagens de programação mais demoradas
Histórico
editarA primeira versão pública beta do AutoHotkey foi lançada em 10 de novembro de 2003,[9] após a proposta de Chris Mallett de integrar suporte a tecla de atalho no AutoIt v2 não ter gerado resposta da comunidade AutoIt.[10][11] Mallett desenvolveu um novo programa do zero, baseando a sintaxe no AutoIt v2 e usando o AutoIt v3 para alguns comandos e o compilador.[12] Posteriormente, o AutoIt v3 mudou de GPL para código fechado devido a "outros projetos repetidamente pegando o código do AutoIt" e "se estabelecendo como concorrentes".[13]
Em 2010, o AutoHotkey v1.1 (originalmente chamado AutoHotkey_L) tornou-se a plataforma para o desenvolvimento contínuo do AutoHotkey.[14] Em 2012, ele se tornou o ramo oficial.[15] Outra versão do programa é AutoHotkey.dll.[16] Um fork conhecido do programa é AutoHotkey_H,[17][18] que tem seu próprio subfórum no site principal.[19]
Versão 2
editarEm julho de 2021, foi lançada a primeira versão beta do AutoHotkey v2.[20][21] O primeiro candidato a lançamento foi lançado em 20 de novembro de 2022, com o lançamento completo da v2.0.0 planejado para mais tarde no mesmo ano.[22] Em 20 de dezembro de 2022, a versão 2.0.0 foi oficialmente lançada.[23] Em 22 de janeiro de 2023, o AutoHotkey v2 tornou-se a versão principal oficial. A versão v1.1 tornou-se legada e não foram implementados novos recursos, mas ainda era suportada pelo site.[24] Em 16 de março de 2024, foi lançada a última atualização do AutoHotkey v1.1, que agora atingiu o fim de seu ciclo de vida.[25]
Exemplos
editarO seguinte script procura por uma palavra ou frase específica usando o Google. Após o usuário copiar o texto de qualquer aplicativo para a área de transferência, pressionar a tecla configurável Win+G abre o navegador da web padrão do usuário e realiza a pesquisa.
#g::Run "https://www.google.com/search?q=" . A_Clipboard
O script a seguir define uma hotstring que permite ao usuário digitar att em qualquer programa e, ao seguir com um caractere final, substitui automaticamente por "atenciosamente":
::att::atenciosamente
Recursos contribuídos pelos usuários
editarExtensões, interops e bibliotecas de script em linha do AutoHotKey estão disponíveis para uso com e de outras linguagens de programação, incluindo:
Outros plugins principais permitem suporte para:
- Programação orientada a aspectos
- Ganchos de função[32]
- Wrappers COM[33]
- Interação com console[34]
- Geração de código dinâmico[35]
- HIDs[36]
- Automação do Internet Explorer[37]
- Criação de GUI[38]
- Programação sintética[30]
- Web services[39]
- Ganchos de eventos do Windows[40]
Malware
editarQuando o AutoHotkey é usado para criar software autônomo para distribuição, esse software deve incluir a parte do próprio AutoHotkey que entende e executa scripts do AutoHotkey, pois é uma linguagem interpretada. Inevitavelmente, alguns malware foram escritos usando AutoHotkey.[41] Quando produtos anti-malware tentam identificar itens de malware que foram programados usando AutoHotkey, às vezes identificam erroneamente o AutoHotkey como o responsável em vez do próprio malware.[carece de fontes]
Veja também
editar- AutoIt (para Windows)
- AutoKey (para Linux)
- Automator (para Macintosh)
- Bookmarklet (para navegadores web)
- iMacros (para Firefox, Chrome e Internet Explorer)
- Keyboard Maestro (para Macintosh)
- KiXtart (para Windows)
- Macro Express (para Windows)
- Winbatch (para Windows)
Referências
- ↑ «Licença de Software». AutoHotkey. Consultado em 8 de junho de 2022.
GNU GENERAL PUBLIC LICENSE Version 2, June 1991
- ↑ Contato Erica Sadun: Comentário (19 de agosto de 2005). «Ericasadun 2005 Life Hacker». Lifehacker.com. Consultado em 2 de dezembro de 2011
- ↑ «Quick Reference | AutoHotkey». www.autohotkey.com
- ↑ «AutoHotkey Tutorial: Macro and Hotkey Creation». Autohotkey.com. Consultado em 2 de dezembro de 2011
- ↑ «Remapping Keys and Buttons». Autohotkey.com. Consultado em 2 de dezembro de 2011
- ↑ «Hotstrings and Auto-replace (similar to AutoText and AutoCorrect)». Autohotkey.com. 9 de janeiro de 2005. Consultado em 2 de dezembro de 2011
- ↑ «Hotkeys, Hotstrings, and Remapping». Autohotkey.com. Consultado em 23 de maio de 2018
- ↑ «AutoHotkey Changes and New Features, v1.0.47 - June 19, 2007». Autohotkey.com. Consultado em 2 de dezembro de 2011
- ↑ «AutoHotkey Changelog for Years 2003-2004». Autohotkey.com. Consultado em 2 de dezembro de 2011. Arquivado do original em 4 de novembro de 2011
- ↑ «Postagem do autor Chris Mallett nos Fóruns do AutoHotkey». Autohotkey.com. Consultado em 2 de dezembro de 2011
- ↑ «Uma comparação não funcional entre AutoIt e AutoHotkey». Paperlined.org. Consultado em 2 de dezembro de 2011. Arquivado do original em 8 de dezembro de 2011
- ↑ «Postagem do autor Chris Mallett nos Fóruns do AutoHotkey». Autohotkey.com. Consultado em 2 de dezembro de 2011
- ↑ «Licensing Opinions - Fóruns AutoIt». Autoitscript.com. Consultado em 2 de dezembro de 2011
- ↑ «Postagem no fórum por Chris, anunciando que AutoHotkey_L agora é a plataforma principal». Autohotkey.com. Consultado em 2 de dezembro de 2011
- ↑ «Our History». The AutoHotkey Foundation. 26 de maio de 2014. Consultado em 23 de julho de 2016
- ↑ «AutoHotekey.dll Module». github.io. Consultado em 13 de maio de 2017
- ↑ «Fork Hotkeyit's AutoHotkey_H». GitHub
- ↑ «Fork AutoHotkey_H de Thqby». GitHub
- ↑ «Subfórum AutoHotkey_H». AutoHotkey.com
- ↑ «AutoHotkey v2». AutoHotkey.com. Consultado em 28 de julho de 2021
- ↑ «AutoHotkey v2.0-beta.1 - Comunidade AutoHotkey». www.autohotkey.com. Consultado em 11 de janeiro de 2022
- ↑ «AutoHotkey v2.0-rc.1». AutoHotkey.com. Consultado em 20 de novembro de 2022
- ↑ «AutoHotkey v2.0.0». AutoHotkey.com. Consultado em 20 de dezembro de 2022
- ↑ «Anúncio oficial do lançamento do AutoHotkey v2». AutoHotkey.com
- ↑ «End of Life: v1.1». AutoHotkey.com
- ↑ «.NET Framework Interop - Scripts and Functions». AutoHotkey Community
- ↑ «AHK + LUA Interop (stdlib), proof of concept - Scripts and Functions». AutoHotkey Community
- ↑ «ahklisp: lisp on win32 with cffi, sbcl, and autohotkey - Scripts and Functions». AutoHotkey Community
- ↑ «ahkecl : Embedded common lisp in ahk - Scripts and Functions». AutoHotkey Community
- ↑ a b «Machine code functions: Bit Wizardry - Scripts and Functions». AutoHotkey Community
- ↑ «Embedded Windows Scripting (VBScript & JScript) and COM - Scripts and Functions». AutoHotkey Community
- ↑ «function hooks - Sugestões». AutoHotkey Community
- ↑ «COM Standard Library - Scripts and Functions». AutoHotkey Community
- ↑ «LibCon - AutoHotkey Library For Console Support - Scripts and Functions». AutoHotkey Community
- ↑ «LowLevel & dynamic code - Scripts and Functions». AutoHotkey Community
- ↑ «Suporte a Human Interface Device(HID)»
- ↑ «Automação IE7 Navigation and Scripting with Tabs - Scripts and Functions». AutoHotkey Community
- ↑ «:: SmartGUI Creator :: - Scripts and Functions». AutoHotkey Community
- ↑ «Sparrow: AHK WebServer w/ AHK in HTML support (sources incl) - Scripts and Functions». AutoHotkey Community
- ↑ «[ferramenta] WinEventHook Messages - Scripts and Functions». AutoHotkey Community
- ↑ Pesquisa, Nocturnus Cybereason. «Fauxpersky: CredStealer malware escrito em AutoHotkey disfarçado como Kaspersky Antivirus, espalhando-se através da infecção de unidades USB». Consultado em 29 de março de 2018