Notificar-enviar ignora o tempo limite?

47

Talvez eu esteja fazendo algo errado, mas os comandos não devem ser executados (separadamente)

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

Tem tempos limite diferentes? O primeiro sendo quase instantâneo, o segundo levando 1 segundo e o terceiro 100 segundos. Em todos os casos, parece levar cerca de seis segundos.

Existe uma maneira de contornar o comportamento? Como os desenvolvedores rotulam isso como um "recurso" em vez de um bug, eu gostaria de algumas alternativas ...

    
por Hooked 07.03.2012 / 22:17

4 respostas

42

Esse é um bug conhecido: link

(É considerado uma 'decisão de projeto' pelo mantenedor.)

    
por Boris Bukh 22.04.2012 / 12:43
20

Como mencionado em uma das postagens acima, há uma decisão de design para não permitir esse recurso. Felizmente para você, outras pessoas também discordam e criaram um PPA, e você também pode reverter essa decisão para o seu sistema.

Para resolver seu problema apenas:

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

Opcional

Para adicionar ainda mais recursos para enviar notificações do que você tem atualmente:

Do Ubuntu 16.04 em diante:

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

Para versões 9.10-14.10:

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

Para mais informações sobre a solução acima, leia este artigo:

Bolhas de notificação configuráveis para o Ubuntu

    
por Fabby 02.11.2014 / 19:27
4

Esta foi uma contravenção implementada intencionalmente de convenções estabelecidas sem desqualificação no ambiente do terminal host. ie. notify-send não deveria mais existir, pois compromete a funcionalidade esperada e documentada bem estabelecida, então, em vez disso, um novo comando notify-graffiti deve existir agora - o que ???? Espere um segundo ... todos os scripts que usam a ortografia do nome do comando "convencional" serão comprometidos!?! alterando a convenção de como o nome do comando é escrito?!?! - hmmm Essa filosofia é excepcionalmente paradoxalmente hipócrita, conforme defendida pela interface do terminal de desktop Unity.

Não pode ser feito nos dois sentidos - preservando algumas convenções, ie. o nome de um comando e ainda não outros, a funcionalidade de um comando conforme documentado. Se a funcionalidade está a ser comprometida, então também deve o nome do comando, a fim de manter a integridade, convencionalidade, consistência, etc, do usuário "experiência", ou é que o usuário "frustração", "aborrecimento", "irritação",. ..

ref:

Bookmark:
Notificar-enviar ignora o tempo limite?

    
por George Rowell 24.09.2012 / 17:27
1

Existe um pequeno script útil notify-send.sh como substituto imediato para o envio de notificações que permite que você feche ou substitua as notificações enviadas anteriormente.

Edit: como @Glutanimate apontou, este script suporta o tempo de expiração por padrão.

Uma maneira hacky de enviar uma notificação com 2 segundos pode ser o tempo limite.

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

    
por NiMa Thr 25.01.2018 / 11:17