Software

Automatische Profile für Tastatur und Maus erstellen

El Tutos Profilmanager: Hotkeys, Makros, App-Zuordnung, erweiterbar, portabel - und schlank!

Profile sind eine feine Angelegenheit: Man öffnet die bevorzugte Bildbearbeitung - und schon sind die F-Tasten mit Werkzeugen belegt. Oder zockt ein RPG und Lieblingstränke und -Sprüche liegen auf Maustasten. Oder der Numblock wird zur Maus, wenn etwa ein YouTube-Fenster im Vordergrund ist. Und das Ganze soll bitte automatisch geschehen. Gute Treibersoftware kann so etwas - ist aber selten ;) Selbst Logitechs G Hub kann nur F-Tasten belegen ... Mit El Tutos Profilmanager geht es schnell, einfach und vor allem portabel! Ihr könnt all Eure Profile als einzelne EXE-Datei mitnehmen und an jeder Maus und Tastatur nutzen. Kleiner Bummer: Es geht nur um Tastenzuordungen und Makros unter Windows, nicht um Beleuchtung!

Wieso, weshalb, warum?

Die meisten Menschen dürften wohl die Treibersoftware von Tastatur und Maus verwenden, um Profile zu erstellen. Gemeint sind unterschiedliche Belegungen, sei es für etwaige Sondertasten, F-Tasten, den Numblock, Kombinationen wie STRG+ALT+UMSCHALT+X oder auch ganz normale Tasten. Warum man eine Taste umbelegen will? Nun, wenn Ihr zum Beispiel programmiert, braucht Ihr kein ö, dafür aber häufig den Slash (/) - warum also nicht automatisch umbelegen, sobald die Programmierumgebung startet? Oder denkt an Spiele: Warum nicht das Numpad für Zaubersprüche oder dergleichen verwenden?

Gute Treiber beherrschen die zwei Dinge durchaus: Tasten belegen, Profile automatisch starten. Aber die muss man erstmal finden ... Bei Logitech lassen sich normale Tasten gar nicht programmieren (WTF?!), bei Razer Synapse geht so ziemlich alles, aber der Online-Zwang-Treiber ist dennoch die Hölle und bei Glorious Gaming gibt es keine vernünftigen Profilwechsel und wenn dann auch nur drei Stück. Alles nicht sonderlich erquicklich. Zudem: Selbst wenn es funktioniert, ist das immer noch alles auf Eure eine Tastatur am heimischen Rechner beschränkt - oder auf was auch immer die Hardware selbst speichern kann.

Besser: Beliebig viele Profile in Form einer einzelnen EXE-Datei, die Ihr auf beliebige Eingabegeräte anwenden könnt. Das Erstellen der Profile ist super einfach, im Grunde einfacher als bei manchem Hersteller - allerdings weniger intuitiv. Dafür aber unfassbar viel vielfältiger, denn die Lösung basiert wieder mal auf AutoHotkey.

El Tutos Profilmanager

Jetzt nicht gleich schreiend weglaufen, aber ja, El Tutos Profilmanager basiert auf AutoHotkey und AutoHotkey ist eine Skriptsprache, doch nein, Ihr müsst nicht programmieren. Und damit Ihr wisst, das wir Euch kein A für ein U vormachen, hier mal ein Beispiel für einen Profileintrag, der aus einem a ein u macht:

::a::u

Einfach, oder? Zudem bekommt Ihr hier eine gebrauchsfertige Vorlage, die Ihr einfach mit Cut&Paste erweitern könnt. Der Übersicht halber besteht El Tutos Profilmanager aus drei Bereichen:

  • profile_manager.ahk: Bindet Profile an Apps oder Fenstertitel.
  • profiles/profiles_gimp.ahk: Die Konfigurationen für die einzelnen Apps - etwa Gimp.
  • tools/maus.ahk: Tools, die in mehreren Profilen genutzt werden können - etwa eine Numpad-Maus.

Und am Ende könnt Ihr das alles als praktische, portable EXE-Datei speichern. Es gibt bestimmt noch Dutzende andere Möglichkeiten, Profile anzulegen und zu verwalten, aber mit einem eigenen AutoHotkey-Skript ist es wunderbar schlank, extrem flexibel und unabhängig.

Mini-AutoHotkey-Einführung

Wir haben einen kompletten Einstiegsartikel für AutoHotkey und eine ganze Reihe weiterer Beiträge zum Thema. Falls Ihr mit Skripten nie was zu tun hattet, hier die Mini-Super-Kurz-Version, wie man damit arbeitet:

  1. AutoHotkey installieren
  2. Textdatei mit der Endung .ahk erstellen (etwa floskel.ahk)
  3. Inhalt per Texteditor (notepad) einfügen: ::mfg::Mit freundlichen Grüßen
  4. Datei doppelklicken - Skript läuft, Icon landet im Tray (rechts in der Taskleiste)
  5. Irgendwo mfg gefolgt von LEERTASTE tippen -> aus mfg wird "Mit freundlichen Grüßen"

Profilmanager

Zunächst hier ein kleiner Überblick über alle Inhalte unseres Download-Archivs: Manager, Beispielprofile, Vorlage und Numpad-Maus (die EXE-Datei ist freilich nur zur Veranschaulichung):

profile terminal screenshot
El Tutos Profilmanager: Ein paar popelige Skriptzeilen und Beispiele.

In der Datei profile_manager.ahk stehen einige Beispiele, Erläuterungen und AutoHotkey-Standards, die automatisch beim Erzeugen einer AutoHotkey angelegt werden. Relevant zum Erweitern und Anpassen sind aber nur Einträge folgender Art:

;Gimp
#ifWinActive, ahk_exe gimp-2.10.exe
#include profiles/profile_gimp.ahk
#if

Das ist auch schon alles! #ifWinActive prüft, ob die EXE-Datei gimp-2.10.exe aktiv ist, sprich das Gimp-Fenster im Vordergrund läuft. Wenn dem so ist, wird per include die Profildatei aus dem profiles-Ordner inkludiert, also geladen; das letzte #if schließt die Anweisung einfach nur ab.

Ihr legt einfach für jede App, die ein eigenes Profil haben soll, solch einen Eintrag an, mit angepasster EXE und angepasster Profildatei. Eine relevante Alternative zur EXE-Abfrage gibt es noch, nämlich den Fenstertitel:

;YouTube
#ifWinActive, YouTube
#include profiles/profile_youtube.ahk
#if

Die Anweisung ist sogar noch einfacher, der Fenstertitel ist nämlich Standard für #ifWinActive. Dieses Profil würde also nicht bei Chrome geladen, sondern nur bei einem YouTube-Tab in Chrome (oder sonst einem Fenster mit YouTube darin!).

Und da poppt vielleicht bei Euch die Frage auf: Was, wenn auch ein Chrome-Profil besteht? Dann gelten schlicht die Regeln des Profils weiter oben. Wenn also Chrome und YouTube ein Profil bekommen, muss YouTube weiter oben stehen - damit es als Sonderfall (Chrome-Tab mit YouTube) den Regelfall (Chrome) überchreiben kann.

Tipp: Wenn Ihr unsicher seid, legt in solchen Profilen Kürzel wie etwa

::foo::Aus Chrome-Profil

an, dann könnt Ihr ganz einfach testen, was nun wo ausgeführt wird.

Die profile_manager.ahk ist natürlich auch die einzige Datei, die am Ende gestartet wird - alles Folgende wird von dieser Datei geladen/inkludiert.

Profile

Die Profile liegen im Ordner profiles und folgen dem Muster profile_app-name.ahk - aber Ihr könnt sie natürlich nennen wie Ihr wollt. Auch hier findet Ihr in den Beispieldateien wieder AutoHotkey-Standards, Beispiele und Erläuterungen. Ihr könnt hier natürlich mit allen Möglichkeiten spielen, die AutoHotkey bietet, aber meist geht es um

  • einzelne Tastenbelegungen,
  • Makros und
  • externe Programme.

Einzelne Tastenbelegungen sind trivial, vor allem ohne Modifier-Tasten:

::y::z
::ö::/

Mit Modifier-Tasten, also STRG, ALT etc., sieht es etwas komplizierter aus. Zunächst Beispiele mit Modifier-Tasten in den Hotkeys:

WIN & f::send Hallo Welt
#f::send Hallo Welt

ALT & f::send {Left}
!f::send {Left}

Die ersten beiden Kürzel sind jeweils WIN+F und erzeugen Hallo Welt. Die unteren beiden senden die LINKS-Taste. Die jeweils unteren Zeilen sind schlicht andere Schreibweisen, eben # für die WIN-Taste und ! für ALT. Weitere Beispiele und eine Liste der Modifier-Tasten-Kürzel findet Ihr direkt in den Beispielprofilen sowie in der Vorlage profile_template.ahk.

Nun Beispiele für das Senden von Tastenkombinationen - da es jetzt komplexer wird in mehrzeiliger Schreibweise:

; Kopieren
F1::
SendInput ^c
return

Ihr ahnt es vermutlich: Damit könnt Ihr über F1 ein STRG+C senden, sprich die aktuelle Auswahl kopieren. Das ist durchaus praktisch: Dazu noch STRG+V (Einfügen) auf die F2-Taste und schon habt Ihr Copy&Paste oprimiert ;) Und das könnt Ihr auch auf kleine Makros erweitern, hier etwa für Gimp:

; Einfügen als neue Ebene
F3::
SendInput ^v
SendInput ^+n
return

Hier sendet F3 zunächst STRG+V zum Einfügen der Zwischenablage, dann STRG+N, um daraus eine neue Ebene zu machen. Mit return wird diese kleine Funktion dann beendet. Auf die gleiche Weise könnt Ihr auch Menüs in Programmen öffnen und Funktionen ansteuern, die über keine eigenen, programminternen Kürzel verfügen:

; Nachzeichnen-Dialog aufrufen
F4::
SendInput !e
SendInput s
Sleep, 500
SendInput {Enter}
return

Damit würde in Gimp der Nachzeichnen-Dialog ausgeführt: ALT+E öffnet das Edit-Menü, s ruft das Stroke-Fenster auf, sleep wartet einfach eine halbe Sekunde, damit das Stroke-Fenster auch garantiert geöffnet ist, wenn dann schlussendlich ENTER gesendet wird, um den Dialog mit Standardeinstellungen zu bestätigen.

Cleverle würden jetzt vielleicht darauf hinweisen, dass man in Gimp auch einfach ein Kürzel dafür vergeben könnte. Richtig, aber dann müsste man sich separat um seine Gimp-Kürzel kümmern, durch diese Menünavigation funktioniert das bei jedem Gimp mit der korrekten Spracheinstellung (hier Englisch).

Tipp: Ihr seht hier Send und auch SendInput - in einfachen Fällen funktioniert standardmäßig beides gleich. Im Zweifel nehmt SendInput, das gilt als zuverlässiger - aber wenn Ihr Zeichen sparen wollt, Send tut's auch. Mehr dazu in der sehr guten AutoHotkey-Doku.

Neben dem reinen Senden von Tastenfolgen dürfte vor allem eine weitere AutoHotkey-Funktion relevant sein - das Starten von Programmen:

#q::run, notepad.exe

Versteht Ihr es schon selbst? Genau, WIN+Q führt notepad.exe aus.

Letztlich seht Ihr aber auch hier wieder: Es ist simpel, im Grunde heißt es immer nur Was ich drücken will::Was ausgelöst werden soll und gut ist.

Tools

Makros sind in den Management-Tools der Maus- und Tastaturhersteller oft ein separater Bereich, da diese ja für mehrere Profile oder einfach systemweit relevant sein können. Und auch hier könnt Ihr komplexere, externe Skripte einbinden: Bereits vorhanden findet Ihr das Tool maus.ahk, eine ganz ganz simple Mausfunktion für das ausgeschaltete Numpad. Die 5 wird zum Linksklick, die 0 zum Rechtsklick und 1-9 bewegen den Mauszeiger. Und so eine Numpad-Maus kann durchaus in vielen Profilen nützlich sein, sei es, um ab und an ohne Maus navigieren zu können oder in einer Bildverarbeitung gerade Linien zu ziehen.

Der Einsatz solcher Funktionen ist wieder mal trivial:

#include tools/maus.ahk

In den mitgelieferten Beispielprofilen ist die Maus im YouTube-Profil aktiv - einfach nur zur Demonstration. Wenn Ihr derlei Dinge systemweit nutzen wollt: Ihr könnt sie direkt in der profile_manger.ahk einbinden - oder besser noch ein Profil profile_immer.ahk oder so anlegen und dann per include-Anweisung einbauen.

Eine EXE sie alle zu knechten ...

Wenn Ihr mit der ganzen Hackerei fertig seid, die profile_manager.ahk die richtigen Profile aufruft und die Profile die richtigen Kürzel etablieren, könnt Ihr das Ganze noch zu einer EXE-Datei kompilieren. Auf dem heimischen Rechner seid Ihr mit dem AHK-Skript selbst besser aufgehoben, weil Ihr dann fix Änderungen machen könnt. Aber zum Weitergeben oder zum Mitnehmen ist die EXE besser, da der Zielrechner dann keine AutoHotkey-Installation braucht.

Ruft einfach das Kontextmenü der profile_manager.ahk im Windows-Explorer auf und klickt auf Compile Script und schon speichert AutoHotkey das Skript samt inkludierter Profile und Tools als profile_manager.exe. Alternativ könnt Ihr den Eintrag Compile Script (GUI) wählen, um eine kleine grafische Oberfläche zu öffnen, über die Ihr auch ein eigenes Programm-Icon vergeben dürft.

Tipps für Profile

Die erste Frage, die auftauchen dürfte: Woher kommen die Infos für Fenster-Titel oder EXE-Dateien? AutoHotkey liefert dafür ein Tool mit: Öffnet irgendein AutoHotkey-Skript und ruft dessen Kontextmenü über das Tray-Icon auf - startet darüber den Window Spy. In dem kleinen Fenster seht Ihr dann reichlich Infos über das just aktive Fenster, samt Titel und zugehöriger EXE-Datei.

profile window spy screenshot
Oben seht Ihr die Infos zum Identifizieren von Fenstern.

Die Arbeit mit AutoHotkey läuft in einem ausgewachsenen Texteditor wie Notepad++ sehr viel besser als in Microsofts Notepad: Der Code kann automatisch hübsch bunt angezeigt werden (Syntax Highlightig), geöffnete Skripte lassen sich direkt mit ALT-ENTER ausführen und so weiter. Nicht ohne Grund haben wir so viele Artikel zu Notepad++.

Hier war bislang meist nur von Tastaturen die Rede, aber AutoHotkey kann genau so gut Maustasten ansprechen, deren Abkürzungen hier in der Doku zu finden sind. Hier der linke Mausklick der Numpad-Maus:

NumpadClear::MouseClick

Ein Antitipp zum Schluss: Wenn es Euch um die FN-Taste geht: Vergesst es. Das technische Bla mal außen vor, am Ende des Tages kann AutoHotkey die FN-Taste nicht abgreifen und modifizieren - weil es eine ganz andere Art von Taste ist als der Rest auf der Tastatur! Das liegt aber an der Natur der Sache, nicht an AutoHotkey. Ärgerlich ist das vor allem in einer Hinsicht: Beleuchtungen werden häufig mit FN-Kombinationen angepasst ...

Profile Schritt für Schritt

Das war jetzt viel Text ;) Daher hier nun noch als kurze Erinnerungshilfe alle Schritte, um El Tutos Profilmanager um ein Profil für Torchlight zu erweitern, das drei Funktionen auf drei Maustasten (Mittelklick und die Vor-/Zurück-Tasten einer Logitech-Maus) legt und alles als EXE zu speichern:

1. El Tutos Profilmanager herunterladen und entpacken.

2. profile_manager.ahk öffnen und mit folgendem Code erweitern:

;Torchlight
#ifWinActive, ahk_exe torchlight.exe
#include profiles/profile_torchlight.ahk
#if

4. profile_template.ahk nach profiles/profile_torchlight.ahk kopieren, folgenden Code einfügen:

; Tränke für Leben und Mana sowie Waffenwechsel über Maustasten.
XButton1::2
XButton2::1
MButton::w

5. Rechtsklick auf profile_manager.ahk und über Compile Script zur EXE machen.

El Tutos Profilmanager mag für alle, die ausschließlich grafische Nutzeroberflächen gewohnt sind, zunächst kompliziert wirken - aber wühlt Euch mal durch ein halbes Dutzend Tastatur-Manager der Hardware-Hersteller und Ihr werdet Eure Meinung ändern ;) Zudem: Das Ganze kratzt soweit natürlich nur an der Oberfläche der AutoHotkey-Funktionen, Ihr könnt immer noch mehr Funktionen hinzufügen. Mit der Zeit wachsen die Ansprüche und seid gewiss: Es dauert nicht lange, bis so ziemlich jeder Originaltreiber an seine Grenzen kommt und nervt.

Ein Hinweis noch: El Tutos Profilmanager ist nicht mehr als ein wenig Struktur und ein paar Beispieldateien/Vorlagen - was Ihr daraus macht, liegt bei Euch, nehmt es vornehmlich als Anregung. Und immer ein wenig aufpassen, wenn man Tastatureingaben automatisiert, können auch kleinere Nervereien auftreten, wenn man sich mal verprogrammiert hat ;) Schon mal Tausende Ys binnen Sekunden gesehen? Kann passieren, ist schon passiert ... Und wenn etwas an der Vorlage oder am Konzept nicht in jeder Situation funktioniert - seht's uns nach, hier funktioniert es.

Zugegeben, eines fehlt noch, um die elenden Treiber völlig hinter sich zu lassen: Die Verwaltung der ollen RGB-Beleuchtung. Ist in Arbeit, scheint derzeit aber eher zum Scheitern verurteilt ... Ha! Fünf Tage später haben wir eine Lösung, wenn auch keine sehr schöne ;) Dafür funktioniert das Ganze später als Modul für El Tutos Profilmanager: Ihr könnt die RGB-Steuerung einfach wie die Numpad-Maus über den tools-Ordner einbinden oder als Snippets direkt in die normalen Profile einfügen. Die Lösung ist explizit für die GMMK-Tastatur geschrieben, wird aber mit allen Geräten (nicht nur Tastaturen!) funktionieren, die von OpenRGB unterstützt werden - und noch einigen mehr, wie auch der GMMK.

Mehr über Tastaturen.

Hier nochmal der Download: El Tutos Profilmanager

Hintergrund im Einstiegsbild: Foto von Tirachard Kumtanom von Pexels

Mirco Lang

Freier Journalist, Exil-Sauerländer, (ziemlich alter) Skateboarder, Dipl.-Inf.-Wirt, Einzelhandelskaufmann, Open-Source-Nerd, Checkmk-Handbuchschreiber. Ex-Saturn'ler, Ex-Data-Becker'ler, Ex-BSI'ler. Computer-Erstkontakt: ca. 1982 - der C64 des großen Bruders eines Freunds. Wenn Ihr hier mehr über Open Source, Linux und Bastelkram lesen und Tutonaut unterstützen möchtet: Über Kaffeesponsoring via Paypal.freue ich mich immer. Schon mal im Voraus: Danke! Nicht verpassen: cli.help und VoltAmpereWatt.de. Neu: Mastodon

Ein Kommentar

  1. hallo mirco lang mein name ist romano schwabel, halte mich zur zeit auf grund der schlechten witterung in deutschland in thailand auf und bin dabei liegengebliebene PC arbeiten zu erledigen. habe nur mein laptop dabei und da ist leider kein separater zahlenblock rechts dabei. ich kaufte mir daher eine numerische zahlentastatur mit USB anschluß und es klappt auch fast alles. problem ist daß auf dieser tastatur nur ein “ , “ ( komma ) vorhanden ist, nicht aber ein “ . “ ( punkt ). so habe ich „AutoHotkey“ heruntergeladen und wollte die “ * “ ( stern-taste ) benutzen für den punkt.

    :: .

    leider zeigt es mir dann aber immer einen doppelpunkt ( : ) an.

    nach mehreren versuchen habe ich festgestellt, das wenn ich z.b. *::a eingebe dieses “ a “ immer ein großes “ A “ ist, egal ob ich nun “ *::a “ oder aber “ *::A “ eingebe. daher wird auch der doppelpunkt angezeigt ( ist ja die punkttaste, nur hochgestellt ).

    wie kann ich nun die “ * “ ( stern ) taste auf den punkt einstellen? bzw. wie kann ich kleine buchstaben erzeugen?

    auf der zahlentastatur ist ein punkt, der aber als komma ausgegeben wird. sicher kann ich das ändern daß ein punkt ausgegeben wird, aber dann würde mir ja das komma fehlen. ich benötige aber beides.

    vielen dank für eine weiterführende antwort.

    mfg

    romano schwabel

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Schaltfläche "Zurück zum Anfang"