Notify-send ignora il timeout?

47

Forse sto facendo qualcosa di sbagliato, ma non dovrei usare i comandi (esegui separatamente)

notify-send -t 1 "test"
notify-send -t 1000 "test"
notify-send -t 10000 "test"

Hai diversi timeout? Il primo è quasi istantaneo, il secondo prende 1 sec e il terzo 100 secondi. In tutti i casi sembra che occorra circa sei secondi.

C'è un modo per aggirare il comportamento? Come gli sviluppatori etichettano questo come una "caratteristica" invece di un bug, vorrei alcune alternative ...

    
posta Hooked 07.03.2012 - 22:17

4 risposte

42

Questo è un bug noto: link

(È considerato una "decisione progettuale" dal manutentore.)

    
risposta data Boris Bukh 22.04.2012 - 12:43
20

Come menzionato in uno dei post di cui sopra, esiste una decisione progettuale di non consentire questa funzionalità. Fortunatamente per te, anche le altre persone non sono d'accordo e hanno creato un PPA e puoi invertire questa decisione anche per il tuo sistema.

Per risolvere il tuo problema solo:

sudo add-apt-repository ppa:leolik/leolik 
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install libnotify-bin
pkill notify-osd

opzionale

Per aggiungere ancora più funzioni a invio-notifica rispetto a quelle attualmente disponibili:

Da Ubuntu 16.04 in poi:

sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update
sudo apt install notifyosdconfig

Per le versioni 9.10-14.10:

sudo add-apt-repository ppa:amandeepgrewal/notifyosdconfig
sudo apt-get update
sudo apt-get install notifyosdconfig

Per ulteriori informazioni sulla soluzione sopra, leggi questo articolo:

Bolle di notifica configurabili per Ubuntu

    
risposta data Fabby 02.11.2014 - 19:27
4

Si trattava di una violazione intenzionalmente attuata di convenzioni stabilite senza squalifica nell'ambiente del terminal host. vale a dire. notify-send non dovrebbe più esistere poiché compromette la funzionalità prevista e documentata, quindi, dovrebbe ora esistere un nuovo comando notify-graffiti - Cosa ???? Aspetta un secondo ... tutti quegli script che usano l'ortografia "convenzionale" del nome comando saranno compromessi!?! cambiando la convenzione di come viene scritto il nome del comando?!?! - hmmm Questa filosofia è eccezionalmente, paradossalmente ipocrita, come sposata dall'interfaccia del terminale desktop Unity.

Non può essere fatto in entrambi i modi - preservando alcune convenzioni, es. il nome di un comando e non altri ancora, la funzionalità di un comando come documentato. Se la funzionalità deve essere compromessa, anche il nome del comando deve essere tale da mantenere l'integrità, la convenzionalità, la coerenza, ecc. Dell'utente "esperienza", o è quell'utente "frustrazione", "fastidio", "irritazione",. ..

ref:

Segnalibro:
Notifica-invio ignora il timeout?

    
risposta data George Rowell 24.09.2012 - 17:27
1

C'è un piccolo script utile notify-send.sh come rimpiazzo sostitutivo per notify-send che ti consente di chiudere o sostituire notifiche inviate in precedenza.

Modifica: come sottolineato da @Glutanimate, questo script supporta l'ora di scadenza per impostazione predefinita.

Alla fine non sono riuscito a ottenere la scadenza, quindi sono andato piuttosto in modo hacky per inviare una notifica con 2 secondi timeout come questo:

notify-send.sh --print-id test | xargs -I {} bash -c "sleep 2 && notify-send.sh --close={}" &

    
risposta data NiMa Thr 25.01.2018 - 11:17

Leggi altre domande sui tag