AutoHotkey
AutoHotkey er et gratis open source-skriptsprog til Microsoft Windows. Det giver brugerne mulighed for at oprette tastaturgenveje eller genvejstaster, hurtig makroskabelse og automatisering af software. Det giver brugerne mulighed for at automatisere gentagne opgaver i ethvert Windows-program. Brugergrænseflader kan udvides eller ændres af AutoHotkey. F.eks. kan Windows-kontroltastekommandoer erstattes med deres Emacs-ækvivalenter. AutoHotkey-installationen indeholder en hjælpefil. Dokumentation er tilgængelig på internettet.
Funktioner
AutoHotkey-scripts kan bruges til at indlæse programmer, åbne dokumenter og foretage tastetryk og museklik.
AutoHotkey-scripts kan også ændre variabler og manipulere vinduer, filer og mapper.
AutoHotkey-scripts kan startes med en genvejstast. Når brugeren trykker på en kombination af taster, f.eks. Ctrl+Alt+I på tastaturet, kan et script åbne en webbrowser.
Tastaturtaster kan omplaceres, så hvis du trykker på Ctrl+N, kan det aktive vindue få en streg (-). De samme taster kan deaktiveres, således at tryk på Ctrl+N kan resultere i, at der slet ikke sker noget.
AutoHotkey giver også mulighed for "hotstrings", der automatisk erstatter en bestemt tekst, når den skrives. En typisk anvendelse af hotstrings er at udvide forkortelser. Ved at skrive "btw" kan man få teksten "by the way" til at blive til "by the way".
Skripter kan startes automatisk, når computeren starter. De kan køre i baggrunden og kan bruges til at skrive oplysninger til en logfil.
Mere komplekse opgaver kan være at lave brugerdefinerede dataindtastningsformularer (GUI-vinduer), arbejde med systemregistret eller bruge Windows API'et ved at kalde funktioner fra DLL'er. Skripterne kan kompileres til en eksekverbar fil, der kan køres på andre computere, som ikke har AutoHotkey installeret.
Kildekoden er i C++ og kan kompileres med Visual Studio Express.
Hukommelsesadgang via pointere er tilladt ligesom i C.
Nogle anvendelsesmuligheder for AutoHotkey:
- Ændring af tastaturet, f.eks. fra QWERTY til Dvorak eller andre alternative tastaturlayouts.
- Brug genveje til at udfylde ofte anvendte filnavne eller andre sætninger.
- Indtastning af tegnsætning, der ikke findes på tastaturet, f.eks. bøjede anførselstegn ("....").
- Styring af musemarkøren med et tastatur eller et joystick.
- Åbning af programmer, dokumenter og websteder med enkle tastetryk.
- Tilføjelse af en signatur til e-mail eller opslagstavler.
- Overvågning af et system og automatisk lukning af uønskede programmer.
- Planlægning af en automatisk påmindelse, systemscanning eller sikkerhedskopiering.
- Automatisering af gentagende opgaver.
- Udfyldelse af formularer til konkurrencer og gratis gaver automatisk (den kan skrive dit navn, din adresse osv. ind automatisk).
- Prototyper før implementering i et andet, mere tidskrævende programmeringssprog.
Historie
Den første offentlige betaversion af AutoHotkey blev frigivet den 10. november 2003. Den var baseret på syntaksen i AutoIt v2. Den anvendte nogle AutoIt v3-kommandoer og AutoIt v3-kompileren. AutoIt v3 ændrede sin licens fra GPL til lukket kildekode på grund af "andre projekter, der gentagne gange tog AutoIt-kode" og "opførte sig som konkurrenter".
I 2010 blev AutoHotkey v1.1 (oprindeligt kaldet AutoHotkey_L) platformen for den løbende udvikling af AutoHotkey. I slutningen af 2012 blev det den officielle gren.
Eksempler
Følgende script giver brugeren mulighed for at søge efter et bestemt ord eller en bestemt sætning ved hjælp af Google. Efter kopiering af tekst fra et hvilket som helst program til udklipsholderen åbnes brugerens standardwebbrowser og søgningen udføres ved at trykke på den konfigurerbare genvejstast ⊞ Win+G.
Følgende script definerer en hotstring, der gør det muligt for brugeren at skrive "afaik" i et hvilket som helst program og få det automatisk erstattet med "så vidt jeg ved":
I eksemplet nedenfor erstatter Ctrl+⇧ Shift+Q den markerede tekst i en editor med en citeret version af teksten. Det illustrerer brugen af funktioner, argumenter og standardargumentværdier.
Funktioner, som brugerne har bidraget med
Der er udvidelser/interops/inline scriptbiblioteker til rådighed til brug med/fra andre programmeringssprog:
- VB/C# (.NET)
- Lua
- Lisp
- ECL
- VBScript/JScript (Windows Scripting Host)
- Indlejret maskinkode
Andre større plugins giver mulighed for understøttelse af:
- Aspekt-orienteret programmering
- Funktionskroge
- COM-wrappere
- Interaktion med konsollen
- Dynamisk generering af kode
- HID'er
- Automatisering af Internet Explorer
- Oprettelse af GUI
- Webtjenester
- Syntetisk programmering
- Windows-hændelseskroge
Malware
Der er blevet skrevet malware ved hjælp af AutoHotkey.
Anti-malware-produkter identificerer nogle gange fejlagtigt AutoHotkey-scripts som malware. Dette kaldes falske positive resultater.