.Dd 24. Juli 2021 .Dt WELTSCHMERZ 1 .Os .Sh BEZEICHNUNG .Nm weltschmerz .Nd ein kleiner Terminalemulator auf VTE-Basis .Sh ÜBERSICHT .Nm .Oo .Ar Befehl .Op Ar Argument... .Oc .Sh BESCHREIBUNG .Nm ist ein Terminalemulator der auf dem VTE-Widget aufgebaut ist. Er liefert klickbare URLs und Hyperlinks, beinhaltet eine einfache Suchfunktion, und kann die Konfiguration während der Laufzeit neu laden. .Pp .Nm führt den angegebenen Befehl aus, oder - falls kein Befehl übergeben wurde - das Programm, das in der Umgebungsvariable .Ev SHELL angegeben ist. Im Falle dass diese Umgebungsvariable nicht vorhanden oder leer ist, greift .Nm auf die Shell des Benutzers wie in .Pa /etc/passwd angegeben zurück. Schlussendlich, falls auch dieser Eintrag fehlt, wird .Pa /bin/sh ausgeführt. .Pp Die Zwischenablage kann mit .Sy Strg + Umschalt + C befüllt und mit .Sy Strg + Umschalt + V eingefügt werden. .Pp Die Fontgröße kann durch das Scrollen mit gedrückter .Sy Strg-Taste oder durch das Betätigen von .Sy Strg + = und .Sy Strg + - vergrößert und verkleinert werden. Die Standardgröße kann mit .Sy Strg + 0 wiederhergestellt werden. .Pp Das aktuelle Verzeichnis des Programms kann mit .Sy Strg + Umschalt + O im Dateimanager geöffnet werden. Diese Funktion ist nur vorhanden, wenn das zugrunde liegende Programm (etwa der Editor oder die Shell) die OSC 7 Escape-Sequenz unterstützt. .Pp Genau so lässt sich mit .Sy Strg + Umschalt + T ein neues Terminal-Fenster im aktuellen Verzeichnis öffnen. Die oben genannten Einschränkungen gelten auch hier. .Sh SUCHFELD Das Suchfeld lässt sich mit .Sy Strg + Umschalt + F öffnen. Die Suche wird hierbei beim Tippen im Suchfeld automatisch aktualisiert. .Pp Im Suchfeld gelten die folgenden Tastenkombinationen: .Bl -tag -width Ds .It Sy Enter , Strg + G Zum nächsten Suchergebnis springen. .It Sy Umschalt + Enter , Strg + Umschalt + G Zum vorherigen Suchergebnis springen. .It Sy Escape Das Suchfeld schließen. .El .Sh KONFIGURATION Die Konfiguration geschieht durch eine Konfigurationsdatei. .Nm liest diese Datei beim Empfang des SIGUSR1-Signals oder beim Druck auf .Sy Strg + Umschalt + R neu. .Pp .Nm benutzt den Schlüssel-Wert-Parser aus GLib. Das Dateiformat hierfür besteht aus Gruppen von Schlüssel-Wert-Paaren: .Bd -literal -offset indent [misc] font = Iosevka Light 16 [colours] foreground = #000000 background = #ffffff [open-with] mpv = mpv % .Ed .Pp Die GLib-Dokumentation enthält weiterführende Informationen über dieses Format. .Pp Die Einstellungen für die Schlüsselgruppe .Em misc sind wie folgt: .Bl -tag -width Ds .It Sy allow-hyperlinks Ist der Wert .Sy true , so werden OSC-8-Hyperlinks verarbeitet und hervorgehoben. Ist er .Sy false , so werden diese Hyperlinks komplett ignoriert. Der Standardwert ist .Sy false . .It Sy autohide-mouse Ist der Wert .Sy true , so wird der Mauszeiger nach einer Tasteneingabe versteckt und bei dem Bewegen des Zeigers wieder angezeigt. Ist er .Sy false , so wird der Mauszeiger immer angezeigt. Der Standardwert ist .Sy false . .It Sy cursor-shape Gibt die Form des Terminal-Cursors an. Mögliche Werte sind .Sy beam , .Sy block , und .Sy underline . Der Standardwert ist .Sy block . .It Sy cursor-blink Gibt an, ob der Terminal-Cursor blinken soll. Mögliche Werte sind .Sy true , .Sy false , und .Sy system . Der Standardwert ist .Sy system . .Pp Ist der Wert .Sy system , so zieht .Nm die GTK-Einstellung .Sy gtk-cursor-blink heran. Die GTK-Dokumentation enthält weiterführende Informationen über diese Einstellung. .It Sy font Gibt an, welche Schriftart für den Text verwendet wird. Die Schriftart wird in Form einer Schriftbezeichnung der Pango-Bibliothek angegeben. Diese besteht aus einer oder mehreren Schriftartfamilien, null oder mehreren Stilen, und der Größe der Schriftart in Punkten (oder Pixeln, wenn ein Suffix .Dq px angegeben wird): .Bd -literal -offset indent Monospace 12 Iosevka, DejaVu Sans Mono bold italic 16 Gohu GohuFont 11px .Ed .Pp Die Pango-Dokumentation enthält hierüber weiterführende Informationen. .Pp Der Standardwert ist .Sy Monospace 12 . .It Sy scrollback Gibt an, wie viele Zeilen im Ausgabeverlauf gespeichert werden. Mit einem Wert von .Sy -1 wird die Größe des Ausgabeverlaufs nicht limitiert. Der Standardwert ist .Sy 10000 . .It Sy scrollbar Ist der Wert .Sy true , so zeigt .Nm auf der rechten Seite des Terminal-Fensters einen Scrollbalken an. Ist er .Sy false , so wird kein Scrollbalken angezeigt. Der Standardwert ist .Sy true . .Pp .Nm benutzt falls möglich das von GTK sogennante .Dq overlay scrolling . Das bedeutet, dass der Scrollbalken über das Terminal gezeichnet und bei Bedarf versteckt wird. Dieses Verhalten kann durch das Setzen der Umgebungsvariable .Ev GTK_OVERLAY_SCROLLING auf .Sy 0 unterdrückt werden. Genau so kann auch die GTK-Einstellung .Sy gtk-overlay-scrolling verwendet werden. .El .Pp Die Schlüsselgruppe .Em colours enthält die Farbpalette und andere Farbeinstellungen. Die Werte in dieser Gruppe sind ausschließlich Farbangaben: .Bd -filled -offset indent .TS tab(/); l |l lb |l. Angabeart/Beispielangabe = Hexadezimal/#00ffff RGB/rgb(0, 255, 255) RGBA/rgba(0, 255, 255, 1) X11-Farben/cyan .TE .Ed .Pp Die Farbpalette enthält die 16 Grundfarben für das Terminal. Die Schlüssel für die Farbpalette werden wie folgt gebildet: .Bd -literal -offset indent . .Ed .Pp Der Farbtyp ist entweder .Dq normal für normale Farben oder .Dq bright für helle Farben. Die Farbnamen sowie deren Standardwerte sind wie folgt: .Bd -filled -offset indent .TS tab(/); l |l |l lb |l |l. Farbname/Standardwert (normal)/Standartwert (bright) = black/black/grey50 red/red3/red green/green3/green yellow/yellow3/yellow blue/blue2/#5c5cff magenta/magenta3/magenta cyan/cyan3/cyan white/grey90/white .TE .Ed .Pp Die folgenden Farbeinstellungen geben an, welche Farben für bestimmte Teile des Terminals (wie etwa Vorder- und Hintergrund, sowie die Auswahl und fett gedruckter Text) verwendet werden. Die Standardwerte werden benutzt, wenn diese Einstellungen nicht gesetzt sind: .Bd -filled -offset indent .TS tab(/); l |l lb |il. Schlüssel/Standardwert = foreground/normal.white background/normal.black cursor.foreground/Invertierte Darstellung cursor.background/Invertierte Darstellung selection.foreground/Invertierte Darstellung selection.background/Invertierte Darstellung bold/Farbe bleibt unverändert .TE .Ed .Pp Die Schlüsselgruppe .Em open-with enthält Definitionen für benutzerdefinierte Programme, die durch das URI-Kontextmenü aufrufbar sind. Hierbei bestimmt der Schlüsselname mit welchem Namen das Programm im Menü angezeigt wird und der Wert das auszuführende Programm. .Pp .Nm befolgt die Quoting-Regeln der POSIX .Xr sh 1 , führt aber weder Globbing noch Expansion von Variablen durch. Das Zeichen .Dq % im Befehl wird vor der Ausführung durch die URI ersetzt. .Sh DATEIEN .Bl -tag -width Ds .It Em $XDG_CONFIG_HOME/weltschmerz/config Die Konfigurationsdatei für .Nm . .El .Pp .Nm hält sich an die .Dq XDG Base Directory Specification . Ist $XDG_CONFIG_HOME nicht vorhanden oder leer, so wird .Em ~/.config verwendet. .Sh AUTOREN .An -nosplit .Nm wurde von .An Wolfgang Müller Aq Mt wolf@oriole.systems entwickelt.