herbe оповещения
Что: 6809b7590d977119f9a402d630cdcfd150d13e0c
Когда: 2021-04-19 12:34:56+03:00
Темы: tip
herbe оповещения
https://github.com/dudik/herbe
https://vermaden.wordpress.com/2021/04/18/freebsd-desktop-part-23-configuration-herbe-notifications/
Я всплывающими оповещениями не пользуюсь сейчас, ибо по сути всё что
меня интересует просто пишет bell alert в терминал и он выставляет у
окна urgency статус, который я вижу в dwm-е в строке состояния тэгов.
Когда-то для mcabber использовал вывод сообщений jabber приходящих,
но может быть неудобно когда рядом есть человек который может увидеть
эти сообщения.
А ещё одной причиной почему я не пользуюсь оповещениями было то, что
одна из оповещалок написана на Python была, от которого я стараюсь
держаться подальше на своей системе, если речь не про работу. Бесит
его медленная скорость работы. А много других оповещалок работают
через DBus, что вообще не рассматривается -- DBus я не запускаю и
убеждаюсь что никто его не запускает (1517827838dfcb8d1baaaeb75c258f2b59f8714d)
хотя кто-то из зависимостей его устанавливает.
herbe зависит только от X-библиотек и ничего не умеет кроме как просто
показывать сообщения. Есть и патч для того чтобы в вертикальном стэке
отображать. Suckless friendly штука.
оставить комментарий
комментарий 0:
From: Oskar Sharipov
Date: 2021-04-19 10:41:10Z
О, тоже его заценил! Конечно, так и не придумал, где использовать, но на диске код и
бинарник лежит.
А строчка в статусе dwm меня не тригеррит, я легко могу упустить что-то важное там.
Поэтому пока без уведомлений живу.
комментарий 1:
From: Sergey Matveev
Date: 2021-04-19 11:10:47Z
- ** Oskar Sharipov [2021-04-19 10:40]:
>О, тоже его заценил! Конечно, так и не придумал, где использовать, но на диске код и
>бинарник лежит.
Вот и сейчас у меня собранный бинарник лежит, но на этом всё :-)
>А строчка в статусе dwm меня не тригеррит, я легко могу упустить что-то важное там.
>Поэтому пока без уведомлений живу.
Ну я имел в виду не строчку статуса, где можно просто буковками что-то
написать, а urgency состояние окна, при котором тэг в строке состояния
dwm подсвечивается ярким цветом (у меня это просто такой белый фон на
тэге): такое я не могу не увидеть или не обратить на него внимание, тем
более когда оно 99.99% времени никогда не горит этим ярким цветом. И в
отличии от оповещений (herbe/whatever) -- не исчезает, пока явно не
переключишься на urgent окно чтобы снять это состояние.
В командной строке zsh у меня ещё выставлено вот такое:
precmd() { printf "\a\033]2;\033\\" }
escape-последовательности для очистки X11 title окна, которое в tmux
отображается и по умолчанию туда попадает длинный hostname. Но главное
тут это "\a", который делает alert bell, выставляющий автоматом urgency
окна. Это позволяет показать мне что в каком-то окне отобразилась
командная строка -- значит какая-то команда завершила выполнение. Если я
интерактивно работают в этом окне, то urgency не появляется, так как оно
в фокусе. Для меня это невероятнейший по удобству трюк, оповещающий
когда что-то где-то закончилось. Если надо поставить таймер на пять
минут, то я просто делаю в свободном терминале sleep 600 и дальше тэг
dwm-а будет подсвечен, когда sleep отработает и zsh "напечатает" alert.
Если например в каком-то чате много всякого flood-а, мне не интересного
и постоянно отвлекающего (постоянно подсвечивающийся dwm тэг), то в
хороших клиентах можно фильтровать сообщения на которые должен делаться
beep. В irssi можно например только для конкретного окна (чата)
отключить beep-ы.
Если нужно оповестить о завершении какой-то долгой операции на сервере,
то я бывает добавляю вызов mailx -s "blablabla done" ...@stargrave.org
Хотя приход почты у меня urgent-ом нигде не подсвечивается, но в zsh
стоит настройка:
mailpath=(
~/mail/mbox"?Neue Nachrichten in =mbox"
~/mail/arbeit"?Neue Nachrichten in =arbeit"
)
при которой сам zsh следит за появлением новых писем в "обычном" ящике и
рабочем. Списки рассылки у меня почти никогда не попадают в обычный ящик
-- поэтому рассылки меня не будут отвлекать. И если почта появляется, то
у меня в командной строке появится сообщение о том что почта пришла.
Если я сижу в Vim, то да -- никаких оповещений о почте не будет, но я и
не помню когда это мне бы помешало. Так или иначе обычно всегда
параллельно бывает что-то в zsh надо сделать, хотя бы где-то enter
нажать, при котором будет сообщение о почте.
Если хочется явно узнать состояние ящиков, то я нажимаю F1 в zsh,
который вызывает " inc" команду (пробел в начале чтобы оно не попало в
историю):
res=""
for mb in $mboxes; do
[ -e $MAILDIR/$mb/new ] || continue
val=$(find $MAILDIR/$mb/new -type f | wc -l | sed 's/^ *//')
[ "$val" -ne 0 ] || continue
res="$res $mb:$val"
done
echo $res
которая покажет сколько у меня new сообщений в maildir-ах руками явно
перечисленных (некоторые ящики мне вообще не интересны):
% inc
mbox:1 fbsd:4 gnu:1 monitoring:1 nbsd:1 obsd:2 spam:1
Neue Nachrichten in =mbox
в момент вызова этой команды мне ещё и почта в mbox упала.
Пока всё это писал, то так ещё и не придумал где бы мне использовать
herbe. И пока писал, у меня urgency выставился (он выставляется и не
только на X11-окнах, но и табах в tmux) на табе с запущенным
newsboat-ом, только что скачавшим новые новости.
комментарий 2:
From: Sergey Matveev
Date: 2021-04-19 12:16:45Z
- ** Sergey Matveev [2021-04-19 14:10]:
> res=""
> for mb in $mboxes; do
> [ -e $MAILDIR/$mb/new ] || continue
> val=$(find $MAILDIR/$mb/new -type f | wc -l | sed 's/^ *//')
> [ "$val" -ne 0 ] || continue
> res="$res $mb:$val"
> done
> echo $res
Последнее время стал много упрощать своих скриптов на zsh, ведь всё
равно с него никуда не слезу, а портабельность им не нужна. Переписал
жуть выше на:
res=()
for mbox ($mboxes) {
news=($MAILDIR/$mbox/new/*(N))
[[ ${#news} != 0 ]] && res=($res $mbox:${#news})
}
print $res
комментарий 3:
From: Oskar Sharipov
Date: 2021-04-19 23:49:47Z
> precmd() { printf "\a\033]2;\033\\" }
Ого, спасибо! Вроде бы такая простая идея, а вы use-case-ы привели
суперские. Привинтил belling себе.
Получать уведомления о новых письмах в обычной работе консоли тоже
здоровская идея.
Всё же круто вы используете магию tmux-а и shell-а, вот такой
комментарий мне одно удовольствие было читать.
--
Oskar Sharipov
gpg fingerprint: BAC3 F049 748A D098 A144 BA89 0DC4 EA75 714C 75B5
Сгенерирован: SGBlog 0.34.0