Vielleicht mache ich etwas falsch, sollte aber nicht die Befehle (separat ausführen)
notify-send -t 1 "test"
notify-send -t 1000 "test"
notify-send -t 10000 "test"
Haben Sie unterschiedliche Timeouts? Das erste ist fast augenblicklich, das zweite dauert 1 Sekunde und das dritte 100 Sekunden. In allen Fällen scheint es ungefähr sechs Sekunden zu dauern.
Gibt es einen Ausweg aus dem Verhalten? Da die Entwickler dies als "Feature" anstatt als Bug bezeichnen, hätte ich gerne ein paar Alternativen ...
notify-osd
libnotify
Süchtig
quelle
quelle
notify-send "Text Here" ; sleep 3 ; killall notify-osd
(wosleep 3
ist Beispiel für Ablauf (tatsächlich töten) nach 3 Sekunden)!Antworten:
Dies ist ein bekannter Fehler: https://bugs.launchpad.net/ubuntu/+source/notify-osd/+bug/390508
(Es wird vom Betreuer als "Entwurfsentscheidung" angesehen.)
quelle
Wie in einem der obigen Beiträge erwähnt, gibt es eine Entwurfsentscheidung, diese Funktion nicht zuzulassen. Zum Glück sind auch andere anderer Meinung und haben eine PPA eingerichtet. Sie können diese Entscheidung auch für Ihr System rückgängig machen.
Um Ihr Problem zu lösen, gehen Sie einfach wie folgt vor:
Optional
So fügen Sie send-notify noch mehr Funktionen hinzu, als Sie derzeit haben:
Ab Ubuntu 16.04:
Für die Versionen 9.10-14.10:
Weitere Informationen zur obigen Lösung finden Sie in diesem Artikel:
Konfigurierbare Benachrichtigungsblasen für Ubuntu
quelle
E: Failed to fetch http://ppa.launchpad.net/amandeepgrewal/notifyosdconfig/ubuntu/dists/xenial/main/binary-amd64/Packages 404 Not Found
(Zusammenhang: askubuntu.com/questions/50/... )sudo add-apt-repository ppa:leolik/leolik
:;sudo add-apt-repository ppa:amandeepgrewal/notifyosdconfig
;sudo apt-get update
;sudo apt install notify-osd # Updates to actually useful version
;sudo apt install notifyosdconfig
Danke vielmals!upgrade
zudist-upgrade
. Dies sollte Abhilfe schaffen, da notify-osd bereits installiert ist und auf jeden Fall aktualisiert werden sollte.Dies war ein absichtlich umgesetzter Verstoß gegen etablierte Konventionen ohne Disqualifikation im Host-Terminal-Umfeld. dh
notify-send
sollte nicht länger existieren, da es die gut etablierte erwartete und dokumentierte Funktionalität gefährdet. Stattdessennotify-graffiti
sollte nun ein neuer Befehl existieren - Was ???? Warten Sie eine Sekunde ... alle Skripte, die die "konventionelle" Befehlsnamenschreibweise verwenden, werden kompromittiert!?! durch Ändern der Konvention, wie der Befehlsname geschrieben wird?!?! - hmmm Diese Philosophie ist außergewöhnlich, paradoxerweise scheinheilig, wie es die Unity-Desktop-Terminal-Oberfläche unterstützt.Es kann nicht in beide Richtungen getan werden - unter Wahrung einiger Konventionen, z. der Name eines Befehls und noch keine anderen, die Funktionalität eines Befehls wie dokumentiert. Wenn die Funktionalität beeinträchtigt werden soll, sollte dies auch der Befehlsname sein, um die Integrität, Konventionalität, Konsistenz usw. der Benutzererfahrung aufrechtzuerhalten, oder ist dieser Benutzer "frustriert", "verärgert", "irritiert". ..
ref:
man notify-send
"Lesezeichen:
Benachrichtigen-Senden ignoriert Timeout?
quelle
Es gibt ein kleines praktisches Skript notify-send.sh als Ersatz für notify-send, mit dem Sie zuvor gesendete Benachrichtigungen schließen oder ersetzen können .
Bearbeiten: Wie @Glutanimate hervorhob, unterstützt dieses Skript standardmäßig die Ablaufzeit.
Ich konnte die Ablaufzeit nicht erreichen, um am Ende zu arbeiten, und so ging ich ziemlich schief, um eine Benachrichtigung mit einer Zeitüberschreitung von 2 Sekunden wie folgt zu senden :
notify-send.sh --print-id test | xargs -I {} bash -c "sleep 2 && notify-send.sh --close={}" &
quelle
notify-send.sh -t 2 "Hello World!"
. Ich habe das Skript mit meinem lokalen $ PATH-Verzeichnis verknüpft und es in notify-send umbenannt. Nie mehr mit dieser unterdurchschnittlichen notify-osd-Implementierung zu tun!Für Benutzer der Cinnamon-Desktopumgebung gibt es eine Einstellung, die aktiviert werden kann:
Benachrichtigungen> Entfernen Sie Benachrichtigungen nach Erreichen des Timeouts
quelle
Dies ist in Millisekunden. Ich habe auf XUbuntu 16.04 (Ubuntu XFCE) getestet
notify-send -t 3000 "test"
genau 3 Sekunden
quelle