From a6043ad80dd9f9f68204e82755053575754de5bf Mon Sep 17 00:00:00 2001 From: Maarten van Gompel Date: Sun, 21 Mar 2021 15:43:22 +0100 Subject: [PATCH] use icons in status bar --- configs/appcfg/xresources_dwm.xr | 2 +- scripts/core/sxmo_common.sh | 4 ++ scripts/core/sxmo_statusbar.sh | 68 +++++++++++++++++++++++++++++--- 3 files changed, 68 insertions(+), 6 deletions(-) diff --git a/configs/appcfg/xresources_dwm.xr b/configs/appcfg/xresources_dwm.xr index fee2d76..77aea15 100644 --- a/configs/appcfg/xresources_dwm.xr +++ b/configs/appcfg/xresources_dwm.xr @@ -1 +1 @@ -dwm.font: Terminus-11 +dwm.font: FiraMono Nerd Font:size=10 diff --git a/scripts/core/sxmo_common.sh b/scripts/core/sxmo_common.sh index aecdc45..4f99f83 100644 --- a/scripts/core/sxmo_common.sh +++ b/scripts/core/sxmo_common.sh @@ -35,6 +35,8 @@ SXMO_COMMON_INCLUDED=1 # shellcheck disable=SC2034 icon_chk="[x]" #we override this later if the user wants icons +# shellcheck disable=SC2034 +icon_wif="W" #we override this later if the user wants icons [ "$SXMO_NO_ICONS" = "1" ] && return 0; @@ -220,6 +222,8 @@ icon_wn2="" icon_chk="" # shellcheck disable=SC2034 icon_and="" +# shellcheck disable=SC2034 +icon_wif="" #allow the user to override icons if [ -x "$XDG_CONFIG_HOME/sxmo/hooks/icons" ]; then diff --git a/scripts/core/sxmo_statusbar.sh b/scripts/core/sxmo_statusbar.sh index 8b59a4c..0cc0a79 100755 --- a/scripts/core/sxmo_statusbar.sh +++ b/scripts/core/sxmo_statusbar.sh @@ -25,12 +25,12 @@ update() { WIRELESS="" WLANSTATE="$(tr -d "\n" < /sys/class/net/wlan0/operstate)" if [ "$WLANSTATE" = "up" ]; then - WIRELESS="W " + WIRELESS=" " fi # M symbol if modem monitoring is on & modem present MODEMMON="" - pgrep -f sxmo_modemmonitor.sh && MODEMMON="M " + pgrep -f sxmo_modemmonitor.sh && MODEMMON="" # Battery pct PCT="$(cat /sys/class/power_supply/*-battery/capacity)" @@ -38,21 +38,79 @@ update() { cat /sys/class/power_supply/*-battery/status | cut -c1 )" + if [ "$BATSTATUS" = "C" ]; then + if [ "$PCT" -lt 20 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 30 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 40 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 60 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 80 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 90 ]; then + BATSTATUS="" + else + BATSTATUS="" + fi + else + if [ "$PCT" -lt 10 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 20 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 30 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 40 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 50 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 60 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 70 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 80 ]; then + BATSTATUS="" + elif [ "$PCT" -lt 90 ]; then + BATSTATUS="" + else + BATSTATUS="" + fi + fi # Volume AUDIODEV="$(sxmo_audiocurrentdevice.sh)" - [ "$AUDIODEV" = "None" ] && VOL="" || VOL=$(echo "$AUDIODEV" | cut -c1 | tr L S)"$( + AUDIOSYMBOL=$(echo "$AUDIODEV" | cut -c1) + if [ "$AUDIOSYMBOL" = "L" ]; then + AUDIOSYMBOL="" #speakers, use no special symbol + elif [ "$AUDIOSYMBOL" = "H" ]; then + AUDIOSYMBOL=" " + elif [ "$AUDIOSYMBOL" = "E" ]; then + AUDIOSYMBOL=" " #earpiece + fi + VOL=0 + [ "$AUDIODEV" = "None" ] && AUDIOSYMBOL="ﱝ" || VOL="$( amixer sget "$AUDIODEV" | grep -oE '([0-9]+)%' | tr -d ' %' | awk '{ s += $1; c++ } END { print s/c }' | xargs printf %.0f )" - + if [ "$AUDIODEV" != "None" ]; then + if [ "$VOL" -eq 0 ]; then + AUDIOSYMBOL="$AUDIOSYMBOLﱝ" + elif [ "$VOL" -lt 25 ]; then + AUDIOSYMBOL="$AUDIOSYMBOL奄" + elif [ "$VOL" -gt 75 ]; then + AUDIOSYMBOL="$AUDIOSYMBOL墳" + else + AUDIOSYMBOL="$AUDIOSYMBOL奔" + fi + fi # Time TIME="$(date +%R)" - BAR="${CALLINFO}${MODEMMON}${WIRELESS}${VOL} ${BATSTATUS}${PCT}% ${TIME}" + BAR="${CALLINFO}${MODEMMON}${WIRELESS} ${AUDIOSYMBOL} ${BATSTATUS} ${TIME}" xsetroot -name "$BAR" }