From 2dc8fabaaf785050bcc00159aec5f6ff03390dd2 Mon Sep 17 00:00:00 2001 From: Luuk van Baal Date: Mon, 19 Nov 2018 10:58:14 +0100 Subject: [PATCH] newsboat unread statusbar --- .config/i3blocks/config | 3 ++- .scripts/cron/newsup | 12 ++++++------ .scripts/statusbar/i3news | 14 ++++++++++++++ 3 files changed, 22 insertions(+), 7 deletions(-) create mode 100755 .scripts/statusbar/i3news diff --git a/.config/i3blocks/config b/.config/i3blocks/config index a4ff01b..06ceb44 100644 --- a/.config/i3blocks/config +++ b/.config/i3blocks/config @@ -3,7 +3,8 @@ separator_block_width=15 markup=pango [news] -command=cat ~/.newsup +label=📰 +command=i3news interval=once signal=6 diff --git a/.scripts/cron/newsup b/.scripts/cron/newsup index ad7adc6..d5a1dc4 100755 --- a/.scripts/cron/newsup +++ b/.scripts/cron/newsup @@ -1,14 +1,14 @@ #!/bin/sh # Set as a cron job to check for new RSS entries for newsboat. -# Note that newsbot cannot be opened during the sync and this +# Note that newsboat cannot be opened during the sync and this # sync cannot run while another instance of newsboat is open. ping -q -t 1 -c 1 `ip r | grep -m 1 default | cut -d ' ' -f 3` >/dev/null || exit -echo "📰 🔃" > ~/.newsup + +echo 🔃 > ~/.config/newsboat/.update pkill -RTMIN+6 i3blocks -printf "Loading new RSS entries for newsboat...\\n" -/usr/bin/newsboat -x reload && - printf "Done.\\n" -echo "" > ~/.newsup + +/usr/bin/newsboat -x reload +rm -f ~/.config/newsboat/.update pkill -RTMIN+6 i3blocks diff --git a/.scripts/statusbar/i3news b/.scripts/statusbar/i3news new file mode 100755 index 0000000..ef1816c --- /dev/null +++ b/.scripts/statusbar/i3news @@ -0,0 +1,14 @@ +#!/bin/sh + +# i3blocks newsboat module. +# Displays number of unread news items and an loading icon if updating. +# When clicked, brings up `newsboat`. + +case $BLOCK_BUTTON in + 1) "$TERMINAL" -e newsboat ;; + 3) pgrep -x dunst >/dev/null && notify-send "📰 News module: +- Shows unread news items +- Left click opens newsboat" ;; +esac + +echo " $(newsboat -x print-unread | awk '{ print $1}' | sed s/^0$//g)$(cat ~/.config/newsboat/.update 2>/dev/null)"