AutoHotkey


aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
AutoHotkey
Screenshot
Basisdaten
Entwickler Chris Mallett (Chris),
Steve Gray (Lexikos)
Aktuelle Version 1.1.22.09
(11. November 2015)
Betriebssystem Windows
Kategorie Skriptsprache
Lizenz GNU General Public License
Deutschsprachig Übersetzte Dokumentation
ahkscript.org

AutoHotkey, kurz AHK, ist eine Skriptsprache, mit der man die Windows-Benutzeroberfläche steuern kann. Mit Hilfe von AutoHotkey kann man sich wiederholende Arbeitsaufgaben unter Windows automatisieren. AutoHotkey ist eine freie Software.

Überblick

AutoHotkey ist eine Scriptsprache für Windows 2000, XP, Vista, Windows 7 und Windows 8. Unter Windows 95/98/Me funktioniert es mit einigen Einschränkungen.

AutoHotkey ist auch für Programmieranfänger leicht zu erlernen. Die zur Programmiersprache mitgelieferte englische Dokumentation enthält ein Tutorial und zu jedem Befehl komplette Programmbeispiele oder zumindest konkrete Anwendungsfälle. Die zugehörige Hilfedatei AutoHotkey.chm kann durch die aktuelle deutsche Version ersetzt werden.

Anwendungsgebiete

AutoHotkey ist dafür gedacht, sich wiederholende Arbeitsaufgaben zu automatisieren. Mit AHK-Skripten kann man beispielsweise

  • in einem Text markierte Begriffe in der Wikipedia oder einem Wörterbuch nachschlagen,
  • Informationen aus nicht miteinander kompatiblen Datensammlungen (z. B. proprietären Datenbanken und Excel-Tabellen) zusammenführen,
  • Programme durch automatische Texteingaben oder Maus-Klicks (die z. B. abhängig vom aktuellen Fensterinhalt simuliert werden) steuern.

Mit AutoHotkey lassen sich sowohl systemweit gültige als auch programmspezifische Tastenkombinationen und Funktionen zuweisen. So kann man z. B.

  • die Tastaturbelegung nach Wunsch ändern,
  • mit einem Tastendruck Webseiten aufrufen (unabhängig davon, ob der Webbrowser aktiv ist),
  • Hotstrings (AHK-Begriff für selbst definierte Abkürzungen) bei Texteingaben automatisch durch einen anderen (meist längeren) Text ersetzen.

Fortgeschrittene können mit AutoHotkey grafische Benutzeroberflächen (GUI) erstellen, mit Regulären Ausdrücken arbeiten (PCRE) oder direkt auf DLLs von Windows oder Anwendungsprogrammen zugreifen.

Besonderheiten

Es ist möglich, AutoHotkey-Skripte in eigenständig lauffähige Programme zu kompilieren. Diese Programme können somit auch auf Windows-Rechnern ohne AutoHotkey-Installation ausgeführt werden. Ein passender Compiler ist Bestandteil des AutoHotkey-Programmpakets. Skripte wie auch kompilierte Programme unterliegen der vom Entwickler vorgesehenen Lizenz und dürften somit auch als eigenständige Programme verkauft werden. Beim Kompilierungsvorgang lässt sich ein Passwort angeben (bis Version 1.1). Damit lässt sich das Programm vor dem einfachen Rückumwandeln in Quelltext (Dekompilieren) schützen, solange das Passwort nicht bekannt ist. Der so erreichte Schutz entspricht jedoch nicht dem eines binär kompilierten Programms. Um diesen falschen Eindruck nicht zu erwecken, unterstützen neuere Versionen (ab Version 1.1) den Passwortschutz nicht mehr.

Im Programmpaket finden sich noch die Tools

  • AutoScriptWriter, ein Makro-Rekorder. Dieser registriert Tastatureingaben, Mausklicks und identifiziert das momentan aktive Fenster. Er setzt diese Aktionen in ein ablauffähiges AHK-Skript um, das später mit höherer Geschwindigkeit abgespielt werden kann.
  • AU3_Spy, das umfangreiche Informationen zum gerade aktiven Fenster liefert (Fenstertitel, Fenstertext, Namen von Schaltflächen, Inhalt von Eingabefeldern usw.). Die Informationen helfen oft bei der Identifizierung, Auswertung und Steuerung von Fenstern / Dialogfeldern.

AutoHotkey-Programmbeispiele

Das Skript gibt Hallo Welt! in einer MessageBox aus: <syntaxhighlight lang="autohotkey">MsgBox Hallo Welt!</syntaxhighlight>

Das Skript startet das Programm Notepad, wartet, bis das Fenster aktiv ist und tippt dort Hallo Welt! ein: <syntaxhighlight highlight="3" lang="autohotkey"> Run, "notepad.exe" WinWaitActive, ahk_class Notepad Send, Hallo Welt{!} </syntaxhighlight>

Durch das Drücken der Tastenkombination Strg+Alt+W wird ein markiertes Wort bei Wikipedia nachgeschlagen: <syntaxhighlight lang="autohotkey"> ^!w::

alteZwischenablage := ClipboardAll
Send, ^c
InternetAnfrage := "http://de.wikipedia.org/w/index.php?title="

. "Spezial%3ASuche&search=" . Clipboard

Clipboard := alteZwischenablage
Run, % InternetAnfrage

Return </syntaxhighlight>

Die Abkürzung MfG wird durch einen Hotstring nach der Eingabe zu Mit freundlichen Grüßen: <syntaxhighlight lang="autohotkey">

MfG::Mit freundlichen Grüßen

</syntaxhighlight>

Deaktiviert auf dem Desktop das Mausrad und damit versehentliches zoomen: <syntaxhighlight lang="autohotkey">

  1. IfWinActive, ahk_class Progman
 *WheelDown::Return
 *WheelUp::Return

</syntaxhighlight>

Ausgabe einiger Systeminfos in einer selbst definierten Oberfläche:

<syntaxhighlight lang="autohotkey">

Gui, Font, s10, Verdana
Gui, Add, Text, +Center , % "Hallo " A_UserName "`n"
                        .  "Du nutzt ein " A_OSType "-System`n"
                        .  "(Variante " A_OSVersion ")"
Gui, Add, Button, wp gGuiClose, Beenden
Gui, Show,, WikiDemo - User/OS Info

Return GuiClose: GuiEscape:

ExitApp

</syntaxhighlight>

Geschichte

Der Programmierer Chris Mallett begann die Arbeit an AutoHotkey im Jahr 2003. Grund dafür war, dass die von ihm gewünschte Hotkey-Unterstützung für das damals unter der GNU General Public License stehende Programm AutoIt2 zu diesem Zeitpunkt nicht existierte und auch nicht geplant war.

Version 1.0 von AutoHotkey wurde im Februar 2004 veröffentlicht. AutoHotkey kann AutoIt2-Skripte ausführen, und circa 40 AutoHotkey-Befehle basieren direkt auf dem Quellcode von AutoIt. Einige AutoHotkey beigelegte Hilfsprogramme (u. a. der Compiler) stammen ebenfalls aus AutoIt.

AutoIt ist inzwischen kein Open-Source-Programm mehr.

Am 10. Oktober 2010 erklärte der Entwickler Chris Mallet, dass er AutoHotkey nicht mehr aktiv weiterentwickeln werde. Er habe das Interesse verloren, weil er, im Gegensatz zu anderen aktiven Entwicklern, die Skriptsprache nie zu einer voll ausgestatteten Programmiersprache ausbauen wollte. Auf der Download-Seite wird nun eine direkte Weiterentwicklung, die von einigen Mitgliedern der Community entwickelt wurde, als Download für AutoHotkey angeboten. Dieser offizielle Nachfolger trägt den Namen AutoHotkey 1.1 und bietet neben 64bit-Unterstützung auch Unterstützung für Unicode, Arrays und Objekte. Die Originalversion, nun AutoHotkey Basic genannt, verfügt nicht über diese erweiterten Funktionalitäten.

2012: AutoHotkey_L wurde die offizielle Version. „Chris“ übergibt die Besitzrechte der Domain www.autohotkey.com an „polyethene“. Dieser versucht das Rad der Zeit zurückzudrehen.

24. April 2014: Die "AutoHotkey Foundation LLC" wird gegründet, neue offizielle AutoHotkey-Webseite ist ahkscript.org.

22. September 2015: Einigung mit „polyethene“. Übergabe der Domain autohotkey.com. Diese wird vollständig in einen neuen Server migriert.

Weblinks

Quellen