So schreiben Sie ein AutoHotkey-Skript

AutoHotkey ist eine fantastische, aber komplizierte Software. Es war ursprünglich dazu gedacht, benutzerdefinierte Hotkeys erneut an verschiedene Aktionen zu binden, ist aber jetzt eine vollständige Windows-Automatisierungssuite.

AHK ist für neue Benutzer nicht besonders schwer zu erlernen, da das allgemeine Konzept ziemlich einfach ist, aber es ist eine vollständige, Turing-vollständige Programmiersprache. Sie werden die Syntax viel leichter erlernen, wenn Sie einen Programmierhintergrund haben oder mit den Konzepten vertraut sind.

Installieren und Verwenden von AutoHotkey

Der Installationsprozess von AutoHotkey ist unkompliziert. Laden Sie die . herunter Installateur von der offiziellen Website und führen Sie es aus. Wählen Sie „Express-Installation“. Nachdem Sie die Software installiert haben, können Sie mit der rechten Maustaste auf eine beliebige Stelle klicken und Neu > AutoHotkey-Skript auswählen, um ein neues Skript zu erstellen.

AHK-Skripte sind Textdateien mit der Erweiterung .ahk. Wenn Sie mit der rechten Maustaste darauf klicken, erhalten Sie einige Optionen:

„Skript ausführen“ lädt Ihr Skript mit der AHK-Laufzeit.
„Compile Script“ bündelt es mit einer ausführbaren AHK-Datei, um eine EXE-Datei zu erstellen, die Sie ausführen können.
„Skript bearbeiten“ öffnet Ihr Skript in Ihrem Standard-Texteditor. Sie können Notepad verwenden, um AHK-Skripte zu schreiben, aber wir empfehlen die Verwendung von SciTE4AutoHotkey, ein Editor für AHK, der Syntax-Highlighting und Debugging unterstützt.

Während ein Skript ausgeführt wird – unabhängig davon, ob es sich um eine EXE-Datei handelt oder nicht –, wird es im Hintergrund im Windows-Infobereich ausgeführt, der auch als Taskleiste bezeichnet wird. Suchen Sie nach dem grünen Symbol mit einem „H“.

Um ein Skript zu beenden, anzuhalten, neu zu laden oder zu bearbeiten, klicken Sie mit der rechten Maustaste auf das Benachrichtigungssymbol und wählen Sie eine entsprechende Option aus. Skripte werden weiterhin im Hintergrund ausgeführt, bis Sie sie beenden. Sie verschwinden natürlich auch, wenn Sie sich von Windows abmelden oder Ihren PC neu starten.

  So machen Sie mit dem Apple Pencil handschriftliche Notizen auf Ihrem iPad

Wie funktioniert AutoHotkey?

Im Kern macht AHK eines – Aktionen an Hotkeys binden. Es gibt viele verschiedene Aktionen, Hotkey-Kombinationen und Kontrollstrukturen, aber alle Skripte funktionieren nach dem gleichen Prinzip. Hier ist ein einfaches AHK-Skript, das Google Chrome startet, wenn Sie Windows+C drücken:

#c::
Run Chrome
return

Die erste Zeile definiert einen Hotkey. Das Rautezeichen (#) steht für die Windows-Taste und c ist die C-Taste auf der Tastatur. Danach gibt es einen Doppelpunkt (::), um den Beginn eines Aktionsblocks anzuzeigen.

Die nächste Zeile ist eine Aktion. In diesem Fall startet die Aktion eine Anwendung mit dem Befehl Ausführen. Der Block wird mit einem Return am Ende abgeschlossen. Sie können vor der Rückgabe beliebig viele Aktionen durchführen. Sie werden alle nacheinander feuern.

So haben Sie eine einfache Key-to-Action-Zuordnung definiert. Sie können so viele davon in einer .ahk-Datei platzieren, wie Sie möchten, und sie so einstellen, dass sie im Hintergrund läuft und immer nach Hotkeys sucht, die neu zugeordnet werden müssen.

Hotkeys und Modifikatoren

Sie finden eine vollständige Liste der Modifikatoren der AHK in der offiziellen Dokumentation, aber wir konzentrieren uns auf die nützlichsten (und coolsten) Funktionen.

Modifikatortasten haben alle Einzelzeichen-Kurzzeichen. Zum Beispiel, # ! ^ + sind jeweils Windows, Alt, Control und Shift. Sie können mit den Modifikatoren auch zwischen linkem und rechtem Alt, Control und Shift unterscheiden, was viel Platz für zusätzliche Hotkeys eröffnet. + ist beispielsweise die rechte Umschalttaste. Schauen Sie sich die an Schlüsselliste für alles, was Sie nachschlagen können. (Spoiler: Sie können auf fast jede Taste verweisen. Sie können sogar auf andere Eingabegeräte ohne Tastatur verweisen mit a kleine Erweiterung).

Sie können beliebig viele Tasten zu einem Hotkey kombinieren, aber bald werden Ihnen die Tastenkombinationen ausgehen, die Sie sich merken müssen. Hier kommen Modifikatoren ins Spiel, mit denen Sie verrücktere Dinge tun können. Lassen Sie uns ein Beispiel aufschlüsseln aus den AHK-Dokumenten:

  Was genau passiert, wenn Sie Ihren Computer einschalten?

Das grüne #IfWinActive wird als Direktive bezeichnet und wendet zusätzlichen Kontext auf physisch darunter liegende Hotkeys im Skript an. Jeder Hotkey danach wird nur ausgelöst, wenn die Bedingung wahr ist, und Sie können mehrere Hotkeys unter einer Anweisung gruppieren. Diese Direktive ändert sich nicht, bis Sie eine andere Direktive treffen, aber Sie können sie mit einem leeren #If zurücksetzen (und wenn das wie ein Hack aussieht, willkommen bei AHK).

Die Direktive hier prüft, ob ein bestimmtes Fenster geöffnet ist, das von ahk_class Notepad definiert wird. Wenn AHK die Eingabe „Win+C“ erhält, wird die Aktion unter dem ersten #IfWinActive nur ausgelöst, wenn die Direktive true zurückgegeben hat, und dann die zweite überprüfen, wenn dies nicht der Fall ist. Die AHK hat viele Richtlinien, alle finden Sie in die dokumente.

AutoHotkey hat auch heiße Strings, die wie Hotkeys funktionieren, außer dass eine ganze Textzeichenfolge ersetzt wird. Dies ähnelt der Funktionsweise der Autokorrektur – tatsächlich gibt es eine Autokorrektur-Skript für AHK – unterstützt aber jede AHK-Aktion.

Der Hotstring stimmt nur dann mit dem String überein, wenn er genau eingegeben wurde. Es wird automatisch den übereinstimmenden Text entfernen, um auch den Hotstring zu ersetzen, obwohl dieses Verhalten angepasst werden kann.

Aktionen

Eine Aktion in der AHK ist alles, was von außen auf das Betriebssystem einwirkt. Die AHK hat viele Aktionen. Wir können unmöglich alle erklären, also werden wir einige nützliche herausgreifen.

Eingabe senden, sei es Text oder verschiedene Tastendrücke.
Bewegen Sie die Maus herum. Tatsächlich wird AHK manchmal fälschlicherweise als Cheat-Software für Videospiele gekennzeichnet, da die Leute damit voll funktionsfähige Aimbots gemacht haben.
Klick mit der Maus, mit Positionierung relativ zum aktuellen Fenster.
Dialogmenüs anzeigen, komplett mit Formularen und Eingabefeldern.
Fenster verschieben, Größe anpassen und öffnen und schließen.
Musik spielen.
Schreiben in die Windows-Registrierung. Ja wirklich.
Inhalt der Zwischenablage ändern.
Dateien lesen und schreiben. Sie können Dateien durchlaufen und Aktionen in jeder Zeile ausführen. AHK kann sogar in .ahk-Dateien schreiben und ihren eigenen Code anpassen.

  So verwenden Sie das Microsoft Teams-Tool für die Dokumentzusammenarbeit

Den meisten dieser Aktionen sind auch informationsorientierte Befehle zugeordnet. Sie können beispielsweise in die Zwischenablage schreiben, aber auch den Inhalt der Zwischenablage in einer Variablen speichern und Funktionen ausführen, wenn sich die Zwischenablage ändert.

Alles mit Kontrollstrukturen verknüpfen

Ohne all die Kontrollstrukturen, die sie ausmachen, wäre die AHK nicht das, was sie ist Turing-komplett.

Zusätzlich zu den #If-Anweisungen haben Sie auch Zugriff auf Wenn innerhalb von Aktionsblöcken. AHK hat Zum Schleifen, geschweifte Klammer Blöcke, Versuchen und Catch-Anweisungen und viele andere. Sie können innerhalb des Aktionsblocks auf externe Daten zugreifen und diese in speichern Variablen oder Objekte später zu verwenden. Sie können definieren benutzerdefinierte Funktionen und Etiketten. Wirklich, alles, was Sie in einer anderen Programmiersprache leicht tun könnten, können Sie wahrscheinlich in AHK mit etwas Kopfschmerzen und einem Blick in die Dokumentation tun.

Stellen Sie sich zum Beispiel vor, Sie haben eine langweilige, sich wiederholende Aufgabe, bei der Sie auf mehrere Schaltflächen hintereinander klicken und auf die Antwort eines Servers warten müssen, bevor Sie dies endlos wiederholen. Mit AHK können Sie dies automatisieren. Sie möchten einige Schleifen definieren, um die Maus an bestimmte Stellen zu bewegen, klicken und dann zur nächsten Stelle gehen und erneut klicken. Fügen Sie ein paar Wait-Anweisungen hinzu, damit es nicht kaputt geht. Du könntest es sogar versuchen Lesen Sie die Farbe der Pixel auf dem Bildschirm um festzustellen, was passiert.

Eines ist sicher – Ihr Skript wird wahrscheinlich nicht schön sein. Aber AutoHotkey auch nicht, und das ist in Ordnung.