1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/bin/bash

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=􀺸
  ;;
  [2-5][0-9]) ICON=􀺶
  ;;
  [1][0-9]) ICON=􀛩
  ;;
  *) ICON=􀛪
esac

if [[ "$CHARGING" != "" ]]; then
  ICON=􀢋
fi

sketchybar --set "$NAME" icon="$ICON" label="$PERCENTAGE%"

if (( PERCENTAGE < 20 )); then
  sketchybar --set "$NAME" label.drawing=on
elif (( PERCENTAGE == 100 )); then
  sketchybar --set "$NAME" label.drawing=off
fi