MZ-Textbausteine ist ein systemweiter Textkürzel-Expander für Windows. Das Programm läuft unsichtbar im Hintergrund und ersetzt vordefinierte Kürzel automatisch durch längere Texte - in jeder Anwendung, jedem Textfeld und jedem Browser. Die Idee ist nicht neu: macOS bietet das seit Jahren als „Textersetzungen" in den Systemeinstellungen, und Omarchy Linux nutzt CapsLock als Compose-Taste für ähnliche Sequenzen. MZ-Textbausteine führt beide Konzepte unter Windows zusammen.
Geschrieben in Rust mit direkter Win32-API-Anbindung. Keine GUI-Bibliothek, kein Browser, kein Hintergrund-Service - nur ein Tray-Icon und ein paar hundert Kilobyte Binary. Alle Daten bleiben lokal: keine Cloud, kein Server, keine Telemetrie. Der Quellcode ist offen und liegt auf GitHub.
Bekannt aus SAP.
Viele kennen Textbausteine aus SAP - dort lassen sich häufig benötigte Texte hinterlegen und per Kürzel abrufen. Das ist praktisch, hat aber einen entscheidenden Nachteil: Die Bausteine funktionieren nur innerhalb von SAP. Sobald man in Outlook eine E-Mail schreibt, im Browser ein Formular ausfüllt oder in einem anderen Programm arbeitet, sind sie weg.
MZ-Textbausteine löst genau dieses Problem. Die Kürzel stehen in jeder Anwendung zur Verfügung - egal ob SAP, Outlook, Teams, Word, ein Webformular oder der einfache Windows-Editor. Einmal eingerichtet, spart das täglich Zeit: Grussformeln, E-Mail-Adressen, Datumsangaben, Signaturen - alles ist mit wenigen Tasten abrufbar, überall und sofort.
Aus zwei Welten zusammengeführt.
Wer macOS nutzt, kennt die Textersetzungen aus den Systemeinstellungen: ein paar Buchstaben tippen, der vollständige Text erscheint. Das Konzept funktioniert in jeder App - Mail, Notizen, Browser, fremde Software. Unter Omarchy Linux übernimmt CapsLock die Rolle einer Compose-Taste: kurze Folgen wie CapsLock - Space - m erweitern sich zu beliebig langen Texten.
Beide Konzepte fehlen unter Windows. Es gibt einzelne Hilfsprogramme, aber keine systemweite Lösung in der Tradition von macOS oder Omarchy Linux. MZ-Textbausteine kombiniert beide Ansätze: Auslöser im Stil von Apple und Tastenfolgen im Stil von Omarchy Linux - in einer einzigen schlanken Anwendung.
Zwei Eingabemodi.
Beide Modi laufen parallel und ergänzen sich:
- Auslöser-Modus - Eine kurze Buchstabenfolge mit abschliessendem Leerzeichen wird sofort erkannt und ersetzt. Beispiel:
@ewird zuvorname.nachname@example.com. Das Leerzeichen am Ende verhindert Fehlauslösungen mitten in einem Wort. - Tastenfolge-Modus - CapsLock leitet eine Sequenz ein, die das Programm sammelt und mit der Konfiguration vergleicht. Beispiel:
CapsLock - Space - mtippt eine vollständige Grussformel mit zwei Zeilenumbrüchen und Namen.
Solange das Programm läuft, ist CapsLock seiner Funktion als Feststelltaste enthoben - der Tastenfolge-Modus übernimmt die Taste für die Sequenzeinleitung.
Platzhalter.
In den Ersetzungstexten lassen sich Platzhalter verwenden, die zur Laufzeit aufgelöst werden:
{{datum}}- aktuelles Datum im Formattt.mm.jjjj.{{zeit}}- aktuelle Uhrzeit im Formathh:mm.{{zeit_sek}}- aktuelle Uhrzeit mit Sekunden im Formathh:mm:ss.
Zeilenumbrüche im Ersetzungstext werden als \n geschrieben und beim Tippen als Enter-Taste gesendet - so lassen sich vollständige E-Mail-Signaturen oder mehrzeilige Texte hinterlegen.
Konfiguration.
Die Konfiguration erfolgt über eine einzige TOML-Datei mz-textbausteine.toml, die neben der .exe liegt. Jede Ersetzung ist ein eigener Eintrag mit entweder einem Auslöser oder einer Tastenfolge - oder beidem für dasselbe Ziel.
[[textbaustein]]
ausloeser = "@mfg "
ersetzung = "Mit freundlichen Grüssen\n\nMarcel Zimmer"
[[textbaustein]]
tastenfolge = "space d"
ersetzung = "{{datum}}"
Änderungen werden nach einem Neustart des Programms wirksam. Damit bleibt die Konfiguration einfach und nachvollziehbar - kein Datenbank-Backend, keine versteckten Profile, keine Cloud-Sync-Konflikte.
mz-textbausteine.toml mit beispielhaften Auslösern und Tastenfolgen.Tray-Icon und Beenden.
Sobald das Programm läuft, erscheint ein Icon im Infobereich der Taskleiste. Ein Linksklick öffnet ein kleines Über-Fenster mit Versionsnummer, Autorname und klickbaren Verknüpfungen zur Webseite, zu X und zu GitHub. Ein Rechtsklick öffnet ein Kontextmenü mit dem einzigen Eintrag „Beenden".
Beendet wird die Anwendung erst nach einer Sicherheitsabfrage - so verschwinden die Textbausteine nicht versehentlich aus dem System. Bis zur Bestätigung bleibt der Tastatur-Hook aktiv und alle Kürzel funktionieren weiter.
Architektur.
Im Hintergrund läuft ein Low-Level-Keyboard-Hook über SetWindowsHookExW. Jeder Tastendruck wird abgefangen, der eingetippte Puffer mit den konfigurierten Auslösern verglichen und bei Treffern über SendInput die Ersetzung getippt. Der Tastenfolge-Modus arbeitet parallel mit einem eigenen Compose-Puffer.
Das Tray-Icon und das Über-Fenster nutzen die direkte Win32-API - keine GUI-Bibliothek, kein Webview, keine Embedded-Browser. Das Release-Binary ist nur wenige hundert Kilobyte gross und benötigt keine Laufzeitumgebung neben Windows selbst.
MIT-Lizenz.
Der Code steht unter MIT-Lizenz. Freie Nutzung, freie Änderung, freie Weitergabe - auch kommerziell. Haftung, Gewährleistung und Support-Pflicht sind ausgeschlossen. Wer die Anwendung produktiv einsetzt, prüft und passt den Quellcode bei Bedarf selbst an.
Fazit.
MZ-Textbausteine schliesst eine Lücke, die Apple und Omarchy Linux längst geschlossen haben: systemweite Textbausteine, die wirklich überall funktionieren. Auslöser für den Tippfluss, CapsLock-Sequenzen für längere Texte, Platzhalter für Datum und Uhrzeit. Konfiguration in einer einzigen TOML-Datei, Bedienung über das Tray-Icon. Alles lokal, alles offen, alles unter MIT.
Alle Dateien auf GitHub:
- Windows: mz-textbausteine-windows-x86_64.zip
- Quellcode: github.com/marcelzimmer/mz-textbausteine