summaryrefslogtreecommitdiff
path: root/dot-config/sketchybar/plugins/battery.sh
diff options
context:
space:
mode:
authorJosé Juan Loeza Sierra <jj@xz6ze.com>2025-06-13 01:02:52 -0700
committerJosé Juan Loeza Sierra <jj@xz6ze.com>2025-06-13 01:02:52 -0700
commitef91c646f7d7ce5a2547ce9badae64572d6fa1f4 (patch)
treef7f9bebd062779c0acc4ae0a9172c08683c34da0 /dot-config/sketchybar/plugins/battery.sh
parente06462207c18f18e5926ff80869b8af5e4fdaf4a (diff)
move all into one single .config directory
Moves of the config files into a single dot-config directory, simplifying the structure and the usage of stow. dot-config gets processed into .config by stow. See the `--dotfiles` option at https://www.gnu.org/software/stow/manual/stow.html#Invoking-Stow for more information
Diffstat (limited to 'dot-config/sketchybar/plugins/battery.sh')
-rwxr-xr-xdot-config/sketchybar/plugins/battery.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/dot-config/sketchybar/plugins/battery.sh b/dot-config/sketchybar/plugins/battery.sh
new file mode 100755
index 0000000..9dd9627
--- /dev/null
+++ b/dot-config/sketchybar/plugins/battery.sh
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+PERCENTAGE="$(pmset -g batt | grep -Eo "\d+%" | cut -d% -f1)"
+CHARGING="$(pmset -g batt | grep 'AC Power')"
+
+if [ "$PERCENTAGE" = "" ]; then
+ exit 0
+fi
+
+case "${PERCENTAGE}" in
+ 9[0-9]|100) ICON=""
+ ;;
+ [6-8][0-9]) ICON=""
+ ;;
+ [3-5][0-9]) ICON=""
+ ;;
+ [1-2][0-9]) ICON=""
+ ;;
+ *) ICON=""
+esac
+
+if [[ "$CHARGING" != "" ]]; then
+ ICON=""
+fi
+
+# The item invoking this script (name $NAME) will get its icon and label
+# updated with the current battery status
+sketchybar --set "$NAME" icon="$ICON" label="${PERCENTAGE}%"