Automatiseer programma's met AutoHotkey

Door: Toon van Daele | 08 mei 2018 10:40

Apps & Software

Inhoudsopgave

  1. Inleiding
  2. Pagina 2

Met de macro-functies die in sommige programma’s zijn ingebouwd of door middel van batchbestanden, kun je een en ander automatiseren. Maar het gratis opensource AutoHotkey geeft je veel meer mogelijkheden, en werkt onafhankelijk van de gebruikte applicatie. Met een sneltoets woorden invoegen, een toets of muisknop herdefiniëren, een menu-item automatisch laten aanklikken … het kan allemaal.

AutoHotkey is een gratis opensource scripting-tool waarmee je computertaken kunt automatiseren. De mogelijkheden zijn legio: de muiscursor met het toetsenbord aansturen, een systeem monitoren en ongewenste programma’s sluiten, formulieren automatisch laten invullen, een taak inplannen, programma’s en webpagina’s met een sneltoets openen, tekstmacro’s in om het even welke toepassing laten werken, games aansturen en ga zo nog maar even door.

AutoHotkey is een scripting-taal, wat inhoudt dat je de syntax enigszins in de vingers moet krijgen. Enig programmeerinzicht is handig meegenomen, maar zelfs als complete leek kun je er snel mee aan de slag, zoals uit dit artikel zal blijken.

AutoHotkey is volgens de makers “de ultieme scripttaal voor Windows”.

Verder leren

Dit artikel is alvast een aardig vertrekpunt. Je kunt daarnaast terugvallen op actieve fora en op talloze voorbeeldscripts. Wanneer je googelt naar ‘autohotkey script <programma of functie>‘ (bijvoorbeeld autohotkey script gaming) is de kans groot dat je op een nagenoeg kant-en-klaar exemplaar botst. Ook op YouTube vind je trouwens heel wat interessante filmpjes rond AutoHotkey-scripting. Kijken om nog meer te leren dus.

01 Installatie

Om de scripts die we dadelijk zullen bekijken én maken ook zelf uit te kunnen voeren,

heb je natuurlijk een programma nodig dat die scripts kan uitvoeren (interpreter). Die vind je hier. Je gaat bij voorkeur voor de recentste stabiele versie, op het moment van dit schrijven is dat versie 1.1.26.01. Je kunt kiezen tussen een Express Installation en een Custom Installation. We raden je aan voor de Custom installation te gaan, al was het maar om op de diverse tabbladen de verschillende opties even te bekijken. Tenzij je scripts op een 32bit-systeem moeten kunnen draaien, kies je bij voorkeur voor Unicode 64-bit. Bevestig met Install.

Tenzij je specifieke redenen hebt om dat niet te doen, kies je voor Unicode 64-bit.

02 Editor

Voor je het goed beseft is de installatie al een feit. Op het eerste gezicht blijkt daar zo goed als niets van te merken: wanneer je AutoHotkey (kortweg AHK) opstart, krijg je alleen maar de ingebouwde helpfunctie te zien. Best handig natuurlijk, maar weinig spannend. Laten we daar snel iets aan doen en ons allereerste script schrijven. In feite heb je daar niets meer dan een uitgeklede teksteditor als Kladblok voor nodig, maar wij geven toch de voorkeur aan een wat uitgebreider programma. Een tool die je bijvoorbeeld de mogelijke commando’s toont terwijl je aan het intikken bent, die je scriptdelen laat in- en uitklappen, die met duidelijke kleuren werkt, regelnummering en tabbladen ondersteunt enzovoort, biedt vanzelfsprekend meer comfort. We gebruiken hier Scite4AutoHotkey (eveneens beschikbaar in een portable editie). De tool is weliswaar al een paar jaar oud maar werkt ook onder Windows 10 naar behoren. Eventuele updates laat je best meteen installeren. Standaard laadt de editor bij de eerste opstart een voorbeeldscript in (TestSuite.ahk), dat je via het blauwe pijlknopje meteen kunt uitvoeren. Handig als eerste kennismaking met de syntax. Mocht de code onverhoopt niet correct worden weergegeven, ga dan in het Language-menu na of wel degelijk nog de optie AutoHotkey is geselecteerd.

Een ‘intelligente’ editor werkt stukken makkelijker en overzichtelijker.

03 Oerscript

Van oudsher is het bij programmeurs de gewoonte om als allereerste script de boodschap ‘Hallo, wereld’ te laten verschijnen – een traditie die we graag volgen. Wie het voorbeeldscript uit stap 2 al even heeft bekeken, heeft al door dat je dit met één eenvoudige instructie voor elkaar krijgt: MsgBox Hallo, wereld. Overigens moet je je script wel eerst nog even opslaan (met de extensie ahk) voor je dit binnen de editor kunt laten uitvoeren. Merk ook op dat de editor zelf al het commando MsgBox suggereert zodra je ms intikt.

Leuk, maar waarom er niet meteen een ‘tekstmacro’ van maken die in nagenoeg elke applicatie doorwerkt? Dat doen we met een tweede scriptje, waarin we het eerste script oproepen:

::hw::
Run "c:\ahk scripts\hallowereld.ahk"
Return

Dit script is niet lastig te ontrafelen. Het houdt in: wanneer de lettercombinatie hw wordt ingetikt, wordt het script met de naam hallowereld.ahk in c:\ahk scripts uitgevoerd. De syntax voor eenvoudige lettercombinaties is dus ::, gevolgd door de lettercombinatie, waarna de instructies worden uitgevoerd die op de tweede instantie van :: volgt. In AutoHotkey sluiten we een meerregelig script netjes af met het commando Return.

Het kan eigenlijk nog eenvoudiger, wanneer je de lettercombinatie meteen door de volledige tekst laat vervangen: ::hw::Hallo, wereld.{Enter}Welkom in mijn script.{Enter}.

Handig: de editor toont je mogelijke commando’s evenals de parametersyntax.

04 Scriptuitvoer

In stap 5 pikken we de draad van de vorige stap weer op, maar eerst willen we je van de frustratie afhelpen om voor elk script telkens de editor te moeten starten, het script te openen en het uit te voeren. Het is namelijk mogelijk van zo’n script een heus exe-bestand te maken. Klik daartoe zo’n ahk-bestand in Verkenner met de rechtermuisknop aan en kies Compile Script – merk op dat je hier ook de opties Run Script en Edit Script aantreft. Even later staat het exe-bestand al voor je klaar.

Het kan gebeuren dat zo’n (al dan niet gecompileerd) script je op onverwachte manieren parten speelt. Je bent bijvoorbeeld in Word aan het werken om dan vast te stellen dat een van de (actieve) tekstmacro’s in AutoHotkey een bestaande sneltoets heeft gekaapt. Vervelend, maar gelukkig is er iets aan te doen: rechtsklik in het Windows-systeemvak op het scripticoontje, waarna je Suspend Hotkeys selecteert of – drastischer – Exit aanklikt.

Van script naar executable in twee muisklikken.

Eigen pictogram

Een gecompileerd ahk-script kun je probleemloos aan andere gebruikers doorgeven: die kunnen het dan ook uitvoeren zonder zelfs AutoHotkey nodig te hebben. Immers, de AutoHotkey-interpreter wordt in het exe-bestand gestopt. Leuk is ook dat je je eigen pictogram aan zo’n programma kunt koppelen. Open daartoe de programmagroep AutoHotkey en kies Convert .ahk to .exe. Via Browse verwijs je zowel naar het bronscript als naar het uitvoerpad. Met de onderste Browse-knop koppel je er dan een specifiek ico-bestand aan. Met Convert compileer je het script.

Handig om weten: met een gratis tool als GreenFish Icon Editor Pro zet je een eigen afbeelding moeiteloos om in zo’n ico-bestand.

Met de ingebouwde converter koppel je ook een eigen pictogram aan je exe-bestand.

Pop-upvensters

Wil je tekst in een pop-upvenster (zoals ‘MsgBox, Hallo wereld’ uit stap 3) laten verschijnen, dan kun je gebruikmaken van het knopje MsgBox Creator in Scite4AutoHotkey. Er verschijnt dan een dialoogvenster waarin je de titel, inhoud, eventuele knoppen en pictogrammen en enkele stijlaspecten kunt aanduiden in een grafische ontwerpomgeving. Heb je alles goed ingesteld, druk dan op de Test-knop en vervolgens op Insert in SciTE. De resulterende coderegel wordt dan in je script geïnjecteerd.

0 Reactie(s) op: Automatiseer programma's met AutoHotkey

  • Om te reageren moet je ingelogd zijn. Nog geen account? Registreer je dan en praat mee!
  • Er zijn nog geen reacties op dit artikel.

Wanneer je een reactie plaatst ga je akoord
met onze voorwaarden voor reacties.