Kaip parašyti „AutoHotkey“ scenarijų

„AutoHotkey“ yra fantastiška, bet sudėtinga programinė įranga. Iš pradžių buvo numatyta pritaikyti sparčiuosius klavišus skirtingiems veiksmams, tačiau dabar tai visas „Windows“ automatikos rinkinys.

AHK nėra ypač sunku išmokti naujiems vartotojams, nes bendra koncepcija yra gana paprasta, tačiau tai yra visa, Tiuringo kalba parengta programavimo kalba. Sintaksę pasiimsite daug lengviau, jei turite programavimo pagrindą arba esate gerai susipažinę su šiomis sąvokomis.

„AutoHotkey“ diegimas ir naudojimas

„AutoHotkey“ diegimo procesas yra paprastas. Atsisiųskite diegimo programą iš oficialios svetainės ir paleiskite ją. Pasirinkite „Express Installation“. Įdiegę programinę įrangą, galite bet kur spustelėti dešiniuoju pelės mygtuku ir pasirinkti Naujas> „AutoHotkey Script“, kad sukurtumėte naują scenarijų.

AHK scenarijai yra tekstiniai failai su .ahk plėtiniu. Dešiniuoju pelės mygtuku spustelėję juos gausite keletą parinkčių:

  • „Paleisti scenarijų“ jūsų scenarijus bus įkeltas į AHK vykdymo laiką.
  • „Compile Script“ sujungs jį su AHK vykdomuoju failu, kad būtų sukurtas EXE failas, kurį galite paleisti.
  • „Redaguoti scenarijų“ atidarys scenarijų numatytuoju teksto redaktoriumi. Norėdami rašyti AHK scenarijus, galite naudoti „Notepad“, tačiau rekomenduojame naudoti „SciTE4AutoHotkey“, AHK redaktorių, palaikantį sintaksės paryškinimą ir derinimą.

Kol scenarijus veikia - nesvarbu, ar tai EXE, ar ne, - jį rasite fone „Windows“ pranešimų srityje, dar vadinamoje sistemos dėkle. Ieškokite žalios piktogramos su „H“.

Norėdami išeiti, pristabdyti, iš naujo įkelti ar redaguoti scenarijų, dešiniuoju pelės mygtuku spustelėkite pranešimo piktogramą ir pasirinkite tinkamą parinktį. Scenarijai toliau veiks fone, kol iš jų išeisite. Jie taip pat išnyks, kai atsijungsite nuo „Windows“ arba, žinoma, perkraukite savo kompiuterį.

Kaip veikia „AutoHotkey“?

Savo esme AHK daro vieną dalyką - susieja veiksmus su sparčiaisiais klavišais. Yra daugybė skirtingų veiksmų, sparčiųjų klavišų derinių ir valdymo struktūrų, tačiau visi scenarijai veiks tuo pačiu principu. Čia yra pagrindinis AHK scenarijus, kuris paleidžia „Google Chrome“, kai paspaudžiate „Windows + C“:

#c :: Paleiskite „Chrome return“

Pirmoje eilutėje nurodomas spartusis klavišas. Svaro ženklas (#) yra trumpas „Windows“ klavišui ir c yra klaviatūros C klavišas. Po to yra dviguba dvitaškis (: :), reiškianti veiksmo bloko pradžią.

Kita eilutė yra veiksmas. Tokiu atveju veiksmas paleidžia programą su Run komanda. Blokas baigtas ženklu „a return “. Galite atlikti bet kokį skaičių veiksmų prieš return. Jie visi šaudys nuosekliai.

Lygiai taip, jūs apibrėžėte paprastą raktų-veiksmų atvaizdavimą. Galite įdėti tiek, kiek norite, į .ahk failą ir nustatyti, kad jis veiktų fone, visada ieškodamas sparčiųjų klavišų, kuriuos reikia pakeisti.

Spartieji klavišai ir modifikatoriai

Visą AHK modifikatorių sąrašą galite rasti oficialiuose dokumentuose, tačiau mes sutelksime dėmesį į naudingiausias (ir šauniausias) funkcijas.

Visi modifikavimo klavišai turi vieno simbolio trumpinius. Pavyzdžiui, # ! ^ +yra „Windows“, „Alt“, „Control“ ir „Shift“. Taip pat galite atskirti kairįjį ir dešinįjį „Alt“, „Control“ ir „Shift“ naudodami <ir >modifikatorius, kurie atveria daug vietos papildomiems spartiesiems klavišams. Pavyzdžiui, + yra teisingas „Shift“. Pažvelkite į raktų sąrašą, kur rasite viską, ką galite nurodyti. (Spoileris: galite nurodyti beveik kiekvieną klavišą. Galite nurodyti ir kitus ne klaviatūros įvesties įrenginius su nedideliu plėtiniu).

Galite sujungti tiek klavišų, kiek norite, į vieną spartųjį klavišą, tačiau greitai pritrūks klavišų derinių, kuriuos norite prisiminti. Čia atsiranda modifikatoriai, leidžiantys daryti beprotiškesnius dalykus. Išskaidykime pavyzdį iš AHK dokumentų:

Žalia spalva #IfWinActivevadinama  direktyva , o scenarijuje fiziškai pagal ją naudojami papildomi kontekstai. Bet kuris spartusis klavišas po jo suveiks tik tuo atveju, jei sąlyga yra teisinga, ir galite grupuoti kelis sparčiuosius klavišus pagal vieną direktyvą. Ši direktyva nepasikeis, kol nepasieksite kitos direktyvos, tačiau galite ją atstatyti tuščia #If(ir jei tai atrodo kaip nulaužimas, kviečiame apsilankyti AHK).

Ši direktyva tikrina, ar atidarytas konkretus langas, apibrėžtas ahk_class Notepad. Kai AHK gauna įvestį „Win + C“, ji suaktyvins veiksmą pagal pirmąjį #IfWinActive tik tuo atveju, jei direktyva bus teisinga, o tada patikrins antrąją, jei taip nebuvo. AHK turi daug direktyvų, kurias visas galite rasti dokumentuose.

„AutoHotkey“ taip pat turi karštąsias eilutes, kurios veikia kaip spartieji klavišai, išskyrus tai, kad pakeičia visą teksto eilutę. Tai panašu į tai, kaip veikia automatinis taisymas - iš tikrųjų yra AHK automatinio taisymo scenarijus, tačiau palaikomas bet koks AHK veiksmas.

„Hotstring“ atitiks eilutę tik tuo atveju, jei ji bus įvesta tiksliai. Jis taip pat automatiškai pašalins suderintą tekstą ir pakeis karštąją eilutę, nors šį elgesį galima pakoreguoti.

Veiksmai

Veiksmas AHK yra viskas, kas išoriškai veikia operacinę sistemą. AHK turi daugybę veiksmų. Negalime paaiškinti visų, todėl išsirinksime keletą naudingų.

  • Siunčiamas įvestis, nesvarbu, ar tai tekstas, ar įvairūs mygtuko paspaudimai.
  • Pelės judinimas. Tiesą sakant, AHK kartais klaidingai pažymima kaip vaizdo žaidimų apgaulės programinė įranga, nes žmonės su ja sukūrė visiškai veikiančius „Aimbots“.
  • Spustelėjus pelę, padėties nustatymas atsižvelgiant į dabartinį langą.
  • Rodomi dialogo meniu su formomis ir įvesties laukais.
  • Langų judėjimas, dydžio reguliavimas, atidarymas ir uždarymas.
  • Groja muziką.
  • Rašymas į „Windows“ registrą. Taip, tikrai.
  • Mainų srities turinio keitimas.
  • Failų skaitymas ir rašymas. Galite peržiūrėti failus ir vykdyti veiksmus kiekvienoje eilutėje. AHK netgi gali rašyti į .ahk failus ir koreguoti savo kodą.

Daugelyje šių veiksmų taip pat bus susietos su informacija susijusios komandos. Pavyzdžiui, galite rašyti į mainų sritį, bet taip pat galite gauti mainų srities turinį, kad jis būtų saugomas kintamajame ir vykdytų funkcijas, kai keičiasi mainų sritis.

Susieti viską su valdymo struktūromis

AHK nebūtų toks, koks yra be visų valdymo struktūrų, kurios padaro jį Tiuringo pilnu.

Be #Ifdirektyvų, jūs taip pat turite prieigą prie If veiksmų blokų vidaus. AHK turi For kilpas, garbanotas petnešomis blokus, Try ir Catchpareiškimus, ir daugelis kitų. Galite pasiekti išorinius duomenis iš veiksmų bloko ir laikyti juos kintamuosiuose ar objektuose, kuriuos naudosite vėliau. Galite apibrėžti pasirinktines funkcijas ir etiketes. Tikrai, viską, ką galėtumėte lengvai padaryti kita programavimo kalba, greičiausiai galite padaryti AHK, šiek tiek skaudėdami galvą ir peržiūrėdami dokumentus.

Pvz., Įsivaizduokite, kad turite nuobodžią, pasikartojančią užduotį, kuri reikalauja spustelėti kelis mygtukus iš eilės ir palaukti, kol serveris atsakys, prieš tai atlikdamas iš naujo be galo. Norėdami tai automatizuoti, galite naudoti AHK. Norint perkelti pelę į konkrečias vietas, norėtumėte apibrėžti kelias kilpas, spustelėkite, tada pereikite prie kitos vietos ir spustelėkite dar kartą. Įmeskite keletą laukimo pareiškimų, kad jie nenutrūktų. Jūs netgi galite pabandyti perskaityti ekrane esančių taškų spalvą, kad nustatytumėte, kas vyksta.

Aišku viena - jūsų scenarijus greičiausiai nebus gražus. Bet ir „AutoHotkey“ nėra, ir tai gerai.