"AutoHotkey" yra nemokama atvirojo kodo scenarijų kalba, skirta "Microsoft Windows". Ji leidžia naudotojams kurti klaviatūros nuorodas arba sparčiuosius klavišus, greitai kurti makrokomandas ir automatizuoti programinę įrangą. Ji leidžia naudotojams automatizuoti pasikartojančias užduotis bet kurioje "Windows" programoje. Naudojant "AutoHotkey" galima išplėsti arba modifikuoti naudotojo sąsajas. Pavyzdžiui, pakeisti "Windows" valdymo klavišų komandas jų "Emacs" atitikmenimis. Į "AutoHotkey" diegimo programą įtrauktas pagalbos failas. Dokumentacijos galima rasti internete.
Pagrindinės savybės
- Karšti klavišai (hotkeys): priskirkite veiksmus vienam arba keliems klavišų deriniams (pvz., Ctrl+Alt+N).
- Karštieji žodžiai (hotstrings): automatinis teksto išplečiavimas (pvz., rašote „brb“ — jis pakeičiamas „be rūpesčių“).
- Automatizuoti veiksmai: siųsti klavišų paspaudimus, pelės spustelėjimus, atidaryti programas, valdyti langus, skaityti ir rašyti į valdiklius).
- Skenarijų vykdymas: .ahk failus galima paleisti tiesiog dukart spustelėjus; fone rodoma piktograma sistemos dėkle.
- GUI kūrimas: galima kurti paprastas dialogų langus ir vartotojo sąsajas.
- Compiler (Ahk2Exe): iš .ahk failo galite sukurti vykdomąjį .exe failą, kad programą būtų galima paleisti be įdiegtos AutoHotkey aplinkos.
Kaip pradėti
- Atsisiųskite AutoHotkey diegimo failą iš oficialaus šaltinio (įsidiekite pasirinktą versiją — AutoHotkey v1 arba v2).
- Įdiegus, sistemoje bus įtrauktas pagalbos failas; taip pat gausu internetinės dokumentacijos ir pavyzdžių.
- Sukurti savo pirmą scenarijų: tekstiniame redaktoriuje sukurkite failą su plėtiniu .ahk, įrašykite skriptą ir dukart spustelėkite failą, kad paleistumėte.
- Scenarijų valdymas: dešiniuoju pelės mygtuku spustelėkite sistemos dėklo piktogramą, kad perkrautumėte, sustabdytumėte arba išeitumėte iš scenarijaus.
Paprasti pavyzdžiai
Šie pavyzdžiai parodyti bendrą sintaksę ir tipinius naudojimo atvejus:
; Hotkey: Ctrl+Alt+N atidarys Notepad ^!n::Run notepad.exe ; Hotstring: kai įrašysite "sig", jis pakeičiamas jūsų parašu ::sig::Pagarbiai, Jonas Petrauskas ; Paprasta kilpa ir laikmatis #Persistent SetTimer, Hello, 5000 Return Hello: TrayTip, Priminimas, Praėjus 5 sekundėms, 5 Return
Dažniausi naudojimo atvejai
- Teksto išplečiavimas ir įprastų frazių įterpimas.
- Klavišų perraizymas (remapping) ir specialių klavišų pritaikymas.
- Formų ir dialogų pildymas, darbas su verslo programomis, kur nėra API.
- Langų tvarkymas: dydžio, pozicijos keitimas, langų aktyvavimas.
- Pakartotinės procedūros automatizavimas — testavimas, duomenų įvedimas, failų tvarkymas.
Versijų skirtumai
AutoHotkey turi dvi plačiai naudojamas šakas: v1 (ilgametė, daug pavyzdžių internete) ir v2 (naujesnė, aiškesnė ir švaresnė sintaksė). V2 nėra visiškai suderinama atgal su v1 scenarijais — rašant naujus projektus verta apsvarstyti v2, bet senų skriptų palaikymui gali prireikti v1.
Patarimai ir saugumas
- Visada atidžiai peržiūrėkite scenarijų prieš paleisdami – .ahk gali valdyti jūsų sistemą.
- Kai kuri antivirusinė programinė įranga gali klaidingai identifikuoti AutoHotkey scenarijus kaip įtartinus; tai dažnai yra klaidingas įspėjimas, bet visada elkitės atsargiai su nepažįstamais failais.
- Norint valdyti kitas programas ar atlikti veiksmus, reikalaujančius didesnių teisių, gali prireikti paleisti scenarijų su administratoriaus teisėmis.
- Venkite naudoti AHK automatizavimą ten, kur tai pažeidžia programų naudojimo sąlygas arba žaidimų taisykles (anti-cheat sistemos).
Ištekliai ir bendruomenė
AutoHotkey turi aktyvią bendruomenę, daug forumų, pavyzdžių ir scenarijų saugyklų. Diegimo paketo pagalbos failas ir oficiali dokumentacija internete suteikia išsamią sintaksės ir komandų apžvalgą. Pradedantiesiems naudinga peržiūrėti paruoštus pavyzdžius ir palaipsniui pritaikyti juos savo poreikiams.
AutoHotkey yra galingas įrankis, leidžiantis sumažinti pasikartojančių darbų kiekį, pagreitinti darbo eigą ir pritaikyti Windows aplinką pagal savo įpročius. Pradėkite nuo mažų skriptų, išmokite pagrindines komandas ir palaipsniui kurkite sudėtingesnius automatizavimo sprendimus.