summaryrefslogtreecommitdiff
path: root/dot-config/sketchybar/plugins/battery.sh
diff options
context:
space:
mode:
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}%"