Skip to content

Instantly share code, notes, and snippets.

@phuntik
Last active September 5, 2024 13:08
Show Gist options
  • Save phuntik/90ea6bb03c955cdc1ba3e0cc465b234d to your computer and use it in GitHub Desktop.
Save phuntik/90ea6bb03c955cdc1ba3e0cc465b234d to your computer and use it in GitHub Desktop.
i3blocks notify-send calendar
#! /bin/bash
# dunstctl set-paused false
send_current() {
TODAY=$(date '+%-d')
month=$(ncal -bhMw)
BODY=$( tail -n7 <<< $month | sed "s/| /▕ /" | sed -z "s/ \($TODAY\) /<span bgcolor='white' color='black'> \1 <\/span>/1" | sed "s/\(.*\)\(.\{8\}\)$/\1<span color='IndianRed'>\2<\/span>/")
HEAD=$(echo "$month" | head -n1)
notify-send -a 'calendar' \
"$HEAD" "$BODY"
}
send_next() {
MONTH_n=$(date -d "+1 month" '+%m %Y')
month=$(ncal -bhMw $MONTH_n)
BODY=$( tail -n7 <<< $month | sed "s/| /▕ /" | sed "s/\(.*\)\(.\{8\}\)$/\1<span color='IndianRed'>\2<\/span>/" )
HEAD=$( head -n1 <<< $month)
notify-send -a 'calendar' \
"$HEAD" "$BODY"
}
send_prev() {
MONTH_n=$(date -d "-1 month" '+%m %Y')
month=$(ncal -bhMw $MONTH_n)
BODY=$( tail -n7 <<< $month | sed "s/| /▕ /" | sed "s/\(.*\)\(.\{8\}\)$/\1<span color='IndianRed'>\2<\/span>/" )
HEAD=$( head -n1 <<< $month)
notify-send -a 'calendar' \
"$HEAD" "$BODY"
}
handle_action() {
send_prev;
send_current;
send_next;
}
handle_action
@phuntik
Copy link
Author

phuntik commented Sep 5, 2024

added weeks indication
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment