speedwm-personal/modules/module_time

66 lines
1.3 KiB
Plaintext
Raw Normal View History

#!/bin/sh
# time module for status/stellar
# load config
2022-10-27 17:51:19 +02:00
. $HOME/.config/speedwm/statusrc
2022-10-25 19:23:36 +02:00
BINDIR="$(dirname $(command -v speedwm_status))/"
ARG1="$1"
# click
CLICK() {
# values
TIME_SECOND="$(date +%S)"
TIME_MINUTE="$(date +%M)"
TIME_HOUR="$(date +%H)"
TIME_FULL="$(date +%T)"
TIME_ZONE="$(date +%Z)"
ICON="$ITEM2_ICON"
BUTTON="$(cat /tmp/speedwm-button)"
case "$TERMINAL" in
"") TERMINAL=st
esac
# no spacing if there's no icon
if [ "$ICON" != "" ]; then
ICONSPACING=" " # one character spacing
fi
# send the notification
SEND_NOTIF() {
FULL_TIME="${ICON}${ICONSPACING}The time is $TIME_FULL $TIME_ZONE."
notify-send "$FULL_TIME"
echo "Notification sent successfully!"
echo "INFO: $FULL_TIME"
exit 0
}
command -v notify-send > /dev/null && SEND_NOTIF
echo "FATAL: libnotify not installed, can't send notification."
exit 1
}
# information itself
PRINT() {
if [ "$ENABLE_ITEM2" = "true" ]; then
if [ -e "${DATEBINDIR}date" ]; then
HOURS="$(date +%H)"
MINUTES="$(date +%M)"
SECONDS="$(date +%S)"
echo "$ITEM2_SEPARATOR $ITEM2_ICON $ITEM2_FORMAT$ITEM2_APPEND" | sed "s|@h|$HOURS|; s|@m|$MINUTES|; s|@s|$SECONDS|"
fi
fi
}
# argument 1
case "$ARG1" in
"") CLICK ;;
"--print-file") PRINT > /tmp/module_time ;;
"--print") PRINT ;;
"--click") CLICK ;;
esac