Может быть, я делаю что-то не так, но не должны команды (запускаются отдельно)
notify-send -t 1 "test"
notify-send -t 1000 "test"
notify-send -t 10000 "test"
Есть разные таймауты? Первый почти мгновенный, второй занимает 1 секунду, а третий - 100 секунд. Во всех случаях это занимает около шести секунд.
Есть ли способ обойти поведение? Поскольку разработчики помечают это как «фичу» вместо ошибки, я бы хотел несколько альтернатив ...
notify-osd
libnotify
Увлеченные
источник
источник
notify-send "Text Here" ; sleep 3 ; killall notify-osd
(гдеsleep 3
пример истечения срока действия (фактического убийства) через 3 секунды)!Ответы:
Это известная ошибка: https://bugs.launchpad.net/ubuntu/+source/notify-osd/+bug/390508
(Это считается «дизайнерским решением» сопровождающего.)
источник
Как упомянуто в одном из постов выше, есть дизайнерское решение, чтобы запретить эту функцию. К счастью для вас, другие люди тоже не согласны и создали PPA, и вы можете отменить это решение и для своей системы.
Чтобы решить вашу проблему просто:
По желанию
Чтобы добавить еще больше функций для отправки-уведомления, чем у вас есть:
Начиная с Ubuntu 16.04 и далее:
Для версий 9.10-14.10:
Для получения дополнительной информации о решении выше, прочитайте эту статью:
Настраиваемые пузыри уведомлений для Ubuntu
источник
E: Failed to fetch http://ppa.launchpad.net/amandeepgrewal/notifyosdconfig/ubuntu/dists/xenial/main/binary-amd64/Packages 404 Not Found
(связанный: 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
Большое спасибо!upgrade
наdist-upgrade
. Это должно заботиться о вещах, поскольку notify-osd уже установлен и должен быть обязательно обновлен.Это было намеренно реализованным нарушением установленных соглашений без дисквалификации в среде хост-терминала. то есть.
notify-send
больше не должно существовать, так как это ставит под угрозу хорошо установленную ожидаемую и документированную функциональность, поэтому вместо этогоnotify-graffiti
теперь должна существовать новая команда - Что ???? Подождите секунду ... все те сценарии, которые используют "обычное" написание имени команды, будут скомпрометированы!?! изменив соглашение о том, как пишется название команды?!?! - Хммм. Эта философия исключительно, как это ни парадоксально лицемерна, так как поддерживается интерфейсом настольного терминала Unity.Это не может быть сделано в обоих направлениях - сохранение некоторых соглашений, т.е. имя команды и еще не все, функциональность команды, как документировано. Если функциональность должна быть скомпрометирована, то и имя команды должно быть таким, чтобы поддерживать целостность, условность, согласованность и т. Д. «Опыта» пользователя, или это «разочарование», «раздражение», «раздражение» пользователя. ..
ссылка:
man notify-send
"Закладка:
Уведомить-отправить игнорирует тайм-аут?
источник
Существует небольшой удобный скрипт notify-send.sh в качестве замены для уведомления-отправки, который позволяет закрыть или заменить ранее отправленные уведомления.
Редактировать: как указал @Glutanimate, этот скрипт по умолчанию поддерживает время истечения.
Я не мог получить время истечения, чтобы работать в конце, поэтому я пошел довольно хакерский способ отправить уведомление с тайм-аутом в 2 секунды, как это:
notify-send.sh --print-id test | xargs -I {} bash -c "sleep 2 && notify-send.sh --close={}" &
источник
notify-send.sh -t 2 "Hello World!"
. Я сделал ссылку на скрипт в своем локальном каталоге $ PATH и переименовал его в notify-send. Больше не нужно иметь дело с этой реализацией subpar notify-osd!Для тех, кто использует среду рабочего стола Cinnamon, есть параметр, который можно включить:
Уведомления> Удалить уведомления после истечения времени ожидания
источник
Это в миллисекундах. Я тестировал на XUbuntu 16.04 (Ubuntu XFCE)
notify-send -t 3000 "test"
ровно 3 секунды
источник