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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
#!/bin/sh -eu
volume() {
volume=$(pactl get-sink-volume @DEFAULT_SINK@ |
awk 'match($0, /\d+%/) { print substr($0, RSTART, RLENGTH-1) }')
if [ "$volume" -eq 0 ]; then
volume_symbol=""
elif [ "$volume" -le 50 ]; then
volume_symbol=""
else
volume_symbol=""
fi
echo "<span foreground=\"#ed8796\">$volume_symbol $volume%</span>"
}
network() {
ssid=$(iwgetid -r)
if [ -n "$ssid" ]; then
symbol="直"
else
symbol="睊"
fi
echo "<span foreground=\"#f5a97f\">$symbol $ssid</span>"
}
brightness() {
echo "<span foreground=\"#eed49f\"> $(brightnessctl -m | awk -F, '{ print $4 }')</span>"
}
battery() {
status=$(cat /sys/class/power_supply/BAT0/status)
capacity=$(cat /sys/class/power_supply/BAT0/capacity)
idx=$(((capacity - 1) / 10 + 1))
case "$status" in
"Discharging")
symbol=$(echo "<span foreground=\"#ed8796\"></span>,,,,,,,,," |
awk -F, "{ print \$$idx }")
;;
"Charging")
symbol=$(echo " " | awk "{ print \$$idx }")
;;
"Full")
symbol=""
;;
esac
echo "<span foreground=\"#a6da95\">$symbol $capacity%</span>"
}
clock() {
echo "<span foreground=\"#7dc4e4\"> $(date '+%b %d %H:%M')</span>"
}
while true; do
somebar -c status "<span foreground=\"#cad3f5\">$(volume) | $(network) | $(brightness) | $(battery) | $(clock)</span>" || true
sleep 0.2
done
|