AutoHotkey
AutoHotkey este un limbaj de scripting gratuit, cu sursă deschisă, pentru Microsoft Windows. Acesta permite utilizatorilor să creeze comenzi rapide de la tastatură sau taste rapide, crearea rapidă de macrocomenzi și automatizarea software-ului. Acesta permite utilizatorilor să automatizeze sarcinile repetitive în orice aplicație Windows. Interfețele de utilizator pot fi extinse sau modificate de AutoHotkey. De exemplu, înlocuirea comenzilor tastelor de control din Windows cu echivalentele lor din Emacs. Instalarea AutoHotkey include un fișier de ajutor. Documentația este disponibilă pe internet.
Caracteristici
Scripturile AutoHotkey pot fi utilizate pentru a încărca programe, a deschide documente și a efectua apăsări de taste și clicuri de mouse.
Scripturile AutoHotkey pot, de asemenea, să modifice variabile și să manipuleze ferestre, fișiere și foldere.
Scripturile AutoHotkey pot fi pornite printr-o tastă rapidă. Atunci când utilizatorul apasă o combinație de taste, cum ar fi Ctrl+Alt+I de pe tastatură, un script poate deschide un browser web.
Tastele de la tastatură pot fi redistribuite, astfel încât, dacă se apasă Ctrl+N, fereastra activă poate primi o liniuță (-). Aceleași taste pot fi dezactivate, astfel încât, dacă se apasă Ctrl+N, să nu se întâmple nimic.
AutoHotkey permite, de asemenea, crearea de "hotstrings" care vor înlocui automat anumite texte pe măsură ce sunt tastate. O utilizare tipică pentru hotstrings este extinderea abrevierilor. Tastând "btw" se poate face ca textul "apropo" să apară "by the way".
Scripturile pot fi lansate automat la pornirea computerului. Acestea ar putea rula în fundal și ar putea fi utilizate pentru a scrie informații într-un fișier jurnal.
Sarcini mai complexe pot fi crearea de formulare personalizate de introducere a datelor (ferestre GUI), lucrul cu registrul sistemului sau utilizarea API-ului Windows prin apelarea funcțiilor din DLL-uri. Scripturile pot fi compilate într-un fișier executabil care poate fi rulat pe alte calculatoare care nu au instalat AutoHotkey.
Codul sursă este în C++ și poate fi compilat cu Visual Studio Express.
Accesul la memorie prin pointeri este permis la fel ca în C.
Câteva utilizări pentru AutoHotkey:
- Remappingerea tastaturii, cum ar fi trecerea de la QWERTY la Dvorak sau la alte modele alternative de tastatură.
- Utilizarea scurtăturilor pentru a completa numele de fișiere sau alte fraze utilizate frecvent.
- Introducerea unor semne de punctuație care nu sunt prevăzute pe tastatură, cum ar fi ghilimelele curbe ("...").
- Controlul cursorului mouse-ului cu ajutorul unei tastaturi sau al unui joystick.
- Deschiderea de programe, documente și site-uri web prin simpla apăsare a tastelor.
- Adăugarea unei semnături pe e-mail sau pe panourile de mesaje.
- Monitorizarea unui sistem și închiderea automată a programelor nedorite.
- Programarea unui memento automat, a unei scanări a sistemului sau a unei copii de rezervă.
- Automatizarea sarcinilor repetitive.
- Completarea automată a formularelor pentru concursuri și gratuități (ar putea introduce automat numele, adresa și așa mai departe).
- Prototiparea înainte de implementarea într-un alt limbaj de programare, care necesită mai mult timp.
Istoric
Prima versiune beta publică a AutoHotkey a fost lansată pe 10 noiembrie 2003. Ea se baza pe sintaxa din AutoIt v2. Folosea unele comenzi AutoIt v3 și compilatorul AutoIt v3. AutoIt v3 și-a schimbat licența de la GPL la sursă închisă din cauza "altor proiecte care au preluat în mod repetat codul AutoIt" și care "se prezentau ca fiind concurenți".
În 2010, AutoHotkey v1.1 (numit inițial AutoHotkey_L) a devenit platforma pentru dezvoltarea continuă a AutoHotkey. La sfârșitul anului 2012, aceasta a devenit ramura oficială.
Exemple
Următorul script va permite unui utilizator să caute un anumit cuvânt sau o expresie folosind Google. După copierea textului din orice aplicație în clipboard, apăsarea tastei rapide configurabile ⊞ Win+G va deschide browserul web implicit al utilizatorului și va efectua căutarea.
Următorul script definește un hotstring care permite utilizatorului să tasteze "afaik" în orice program și să îl înlocuiască automat cu "din câte știu":
Exemplul de mai jos face ca Ctrl+⇧ Shift+Q să înlocuiască textul selectat într-un editor cu o versiune citată a acelui text. Acesta ilustrează utilizarea funcțiilor, a argumentelor și a valorilor implicite ale argumentelor.
Caracteristicile contribuției utilizatorilor
Există extensii/interopțiuni/biblioteci de scripturi online disponibile pentru utilizarea cu/din alte limbaje de programare:
- VB/C# (.NET)
- Lua
- Lisp
- ECL
- VBScript/JScript (gazdă de scripting Windows)
- Cod mașină încorporat
Alte plugin-uri importante permit suport pentru:
- Programarea orientată pe aspecte
- Cârlige de funcție
- Învelitori COM
- Interacțiunea cu consola
- Generarea dinamică a codului
- HIDs
- Automatizarea Internet Explorer
- Crearea GUI
- Servicii web
- Programare sintetică
- Cârlige pentru evenimente Windows
Malware
Unele programe malware au fost scrise folosind AutoHotkey.
Produsele anti-malware identifică uneori în mod eronat scripturile AutoHotkey ca fiind malware. Acestea se numesc falsuri pozitive.