Skip to main content

Textersetzungen mit Espanso

Häufig brauche ich im Alltag (beruflich oder privat) gleichlautende Texte auch in unterschiedlichen Programmen oder Browsern. Allerdings bin ich ziemlich tippfaul und habe mich daher vor einiger Zeit auf die Suche nach einem Tool für Textbausteine gemacht.

Dabei bin ich auf die Software Espanso gestossen. Diese ist in Rust geschrieben, steht für Linux, MacOS und Windows zur Verfügung und ist unter GPLv3 lizenziert.

Installation

Die Installation erfolgt aus dem Paketmanager wie folgt. Alternativ steht auch ein Snap-Package oder ein Prebuilt Release zur Verfügung.

Unter Archlinux habe ich Espanso bei mir wie folgt installiert:

sudo yay -Sy espanso

Konfiguration

Die Konfiguration erfolgt in einer oder mehrerer YAML-Dateien. Meine Espanso-Konfiguration findet sich auf Github. Mehr Details und Beispiele zur Konfiguration finden sich in der Dokumentation

statische Ersetzungen

Der folgende Eintrag in der YAML-Konfigration ersetzt jede Eingabe von “:llg” durch “Liebe Grüsse\n\nJan”:

matches:
  - trigger: ":llg"
    replace: "Liebe Grüsse\n\nJan"

dynamische Ersetzungen

Statt statischer Ersetzungen kann auch eine dynamische Ausgabe eingefügt werden. Folgende Eintrag in der Konfiguration ersetzt jedes “:ttime” mit der aktuellen Uhrzeit im Format HH:MM:

matches:
  - trigger: ":ttime"
    replace: "{{mytime}}"
    vars:
      - name: mytime
        type: date
        params:
          format: "%H:%M"

Cursor-Hints

Folgender Eintrag in der Konfiguration ersetzt “:div” mit “<div></div>” und platziert den Cursor zwischen den Tags:

matches:
  - trigger: ":div"
    replace: "<div>$|$</div>"

weitere tolle Features

  • Packages: Damit kann man von den Konfigurationen anderer Benutzer:innen profitieren oder eigene Konfigurationen veröffentlichen.
  • applikationsspezifische Konfigurationen: Damit greifen Teile der Konfiguration nur für spezifische Applikationen.
  • Formulare: Ersetzungen mit aus einem Formular eingegebenen oder dort aus einer Liste ausgewählten Liste.
  • Regexp-Matches: Mit der kommenden Version 2.0 sind Ersetzungen auf Basis von regulären Ausdrücken möglich.
  • Synchronisation mit Cloud-Diensten (z.B: Dropbox, GoogleDrive, Nextcloud, Owncloud).

Support

Support direkt vom Autor und auch von der Community gibt es im Subreddit des Projekts.

Fazit

Espanso macht einen grandiosen Job, erleichtert mein Leben sehr und dabei hab ich noch nichtmal alle Features angeschaut. Auch daher sponsere ich das Projekt gerne auf Github.