Zum Inhalt springen

Mako: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Zeile 51: Zeile 51:
Da die Konfiguration sehr umfangreich möglich ist, sei hier nur auf einige Optionen eingegangen.
Da die Konfiguration sehr umfangreich möglich ist, sei hier nur auf einige Optionen eingegangen.


=== Höhe (Text wird abgeschnitten) ===
=== Text wird abgeschnitten (Höhe und Breite) ===
Standardmäßig zeigen Benachrichtigungen nur eine gewisse Menge des Benachrichtigungstextes an, weil die Benachrichtigungsfenster in der Höhe beschränkt sind.
Standardmäßig zeigen Benachrichtigungen nur eine gewisse Menge des Benachrichtigungstextes an, weil die Benachrichtigungsfenster in der Höhe beschränkt sind.


Zeile 68: Zeile 68:
{{hc|1=notify-send "Benachrichtigung mit viel Text" "Diese Benachrichtigung enthält sehr langen Text, der am Ende in der Standardkonfiguration einfach abgeschnitten wird, da das Benachrichtigungsfenster eine gewisse maximale Höhe hat."|2=
{{hc|1=notify-send "Benachrichtigung mit viel Text" "Diese Benachrichtigung enthält sehr langen Text, der am Ende in der Standardkonfiguration einfach abgeschnitten wird, da das Benachrichtigungsfenster eine gewisse maximale Höhe hat."|2=
[[Datei:Mako_full_text.png|300px]]
[[Datei:Mako_full_text.png|300px]]
}}
Die Breite des Benachrichtigungsfensters kann mittels {{ic|width=N}} angegeben werden.
{{hc|1=~/.config/mako/config|2=
width=500
}}
Anders als die Höhe ist die Breite nicht der Maximalwert.
{{hc|1=notify-send "Breite Benachrichtigung" "Das Benachrichtigungsfenster ist 500 Pixel breit."|2=
[[Datei:Mako_wide.png|500px]]
}}
}}



Version vom 21. Februar 2025, 23:44 Uhr

„Mako“ wurde von Dirk (Diskussion) als in Bearbeitung markiert. Um Bearbeitungskonflikte zu vermeiden, kontaktiere Dirk (Diskussion) bitte, bevor du den Artikel bearbeitest.


Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!


mako ist ein Leichtgewichtiges Benachrichtigungsprogramm für Wayland-Compositoren, der die FreeDesktop Notifications Specification implementiert und sich umfangreich konfigurieren und grafisch gestalten lässt.

Installation

Das Programm ist als mako in extra verfügbar, und kann von dort mittels Pacman installiert werden.

pacman -S mako

mako wird bei Bedarf automatisch mittels D-Bus aufgerufen wenn ein Programm eine Benachrichtigung anzeigen will. Man kann mako allerdings auch gezielt starten, wenn man Zum Beispiel mehrere verschiedene Benachrichtigungssysteme installiert hat, und gezielt mako verwenden will.

Hierzu kann man wahlweise mako in den Autostart des Compositors setzen, oder im Benutzerkontext den systemd-Service starten.

systemctl --user enable --now mako

Sofern man nur ein Benachrichtigungssystem benutzt, reicht die installation allerdings aus. Für die Nutzung unter Sway wird empfohlen, exec mako in die Konfiguration zu schreibenn.

Verwendung

Die einfachste Art der Verwendung von mako ist das simple Senden einer Benachrichtigung, zum Beispiel mittels notify-send aus dem Paket libnotify.

notify-send "Ich bin eine Benachrichtigung"

Diese Benachrichtigung wird standardmäßig oben rechts in der Ecke des aktiven Monitors auf allen Arbeitsflächen angezeigt. Durch anklicken der Benachrichtigung verschwindet diese wieder.

Je nachdem, in wie weit die sendenden Programme die FreeDesktop Notifications Specification umsetzen, können zudem weitere Dinge mit übergeben werden. Gemäß Spezifikation werden Icons in Standardpfaden automatisch erkannt, wenn man nur ihren Namen angibt.

notify-send -i archlinux-logo "Beispiel fürs Wiki" "Ich bin eine Benachrichtigung mit Titel, Icon, und etwas Text."

mako unterstützt standardmäßig auch einfache Textformatierung. Die optional per Spezifikation definierten Bilder und Links im Benachrichtigungstext werden von mako derzeit allerdings nicht unterstützt.

notify-send -i archlinux-logo "Beispiel fürs Wiki" "Ich bin eine Benachrichtigung mit Titel, Icon, und etwas Text."

makoctl

Das mitgelieferte Tool makoctl erlaubt das Steuern von mako zur Laufzeit.

makoctl list       # Zeigt alle aktuellen Benachrichtigungen JSON-formatiert an
makoctl dismiss    # Bestätigt und entfernt die letzte Benachrichtigung
makoctl dismiss -a # Bestätigt und entfernt alle Benachrichtigungen
makoctl restore    # Stellt die letzte Benachrichtigung wieder her
makoctl reload     # Aktualisiert die Konfiguration

makoctl verfügt noch über diverse weitere Funktionen, dies sind allerdings für den Alltagsgebrauch die wichtigsten.

Konfiguration

Die Konfiguration von Mako geschieht Userbezogen in ~/.config/mako/config.

mako lädt die Konfiguration nur beim ersten starten (im Regelfall also bei der ersten per D-Bus gesendeten Benachrichtigung). Man kann während des Testens mittels makoctl reload die Konfiguration neu laden. Konfigurationsänderungen werden dabei automatisch auf aktive Benachrichtigungen angewendet.

Da die Konfiguration sehr umfangreich möglich ist, sei hier nur auf einige Optionen eingegangen.

Text wird abgeschnitten (Höhe und Breite)

Standardmäßig zeigen Benachrichtigungen nur eine gewisse Menge des Benachrichtigungstextes an, weil die Benachrichtigungsfenster in der Höhe beschränkt sind.

notify-send "Benachrichtigung mit viel Text" "Diese Benachrichtigung enthält sehr langen Text, der am Ende in der Standardkonfiguration einfach abgeschnitten wird, da das Benachrichtigungsfenster eine gewisse maximale Höhe hat."

Gerade wenn man nicht die Standardtextgröße benutzt kann es passieren, dass neben dem Titel nur einige wenige Wörter angezeigt werden. Dies kann man umgehen, indem man mako die maximale Benachrichtigungfesterhöhe mitteilt.

~/.config/mako/config
height=2000

Hier werden 2000 Pixel als maximale Höhe gesetzt, auch lange Benachrichtigungen werden damit vollständig angezeigt.

notify-send "Benachrichtigung mit viel Text" "Diese Benachrichtigung enthält sehr langen Text, der am Ende in der Standardkonfiguration einfach abgeschnitten wird, da das Benachrichtigungsfenster eine gewisse maximale Höhe hat."

Die Breite des Benachrichtigungsfensters kann mittels {{{1}}} angegeben werden.

~/.config/mako/config
width=500

Anders als die Höhe ist die Breite nicht der Maximalwert.

notify-send "Breite Benachrichtigung" "Das Benachrichtigungsfenster ist 500 Pixel breit."

Styling

Weblinks