mirror of
https://github.com/mintycube/dotfiles.git
synced 2024-10-22 14:05:41 +02:00
55 lines
1.7 KiB
Bash
Executable File
55 lines
1.7 KiB
Bash
Executable File
#!/bin/sh
|
||
|
||
# Prints the current volume or if muted.
|
||
|
||
case $BLOCK_BUTTON in
|
||
1) setsid -w -f "$TERMINAL" -c volume-ui -g=80x15+353+20 -e pulsemixer; pkill -RTMIN+10 "${STATUSBAR:-dwmblocks}" ;;
|
||
2) wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle ;;
|
||
4) wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%+ ;;
|
||
5) wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%- ;;
|
||
3) notify-send " Volume module" "\- Shows volume , if muted.
|
||
- Middle click to mute.
|
||
- Scroll to change." ;;
|
||
6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;;
|
||
esac
|
||
|
||
vol="$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
||
|
||
# If muted, print and exit.
|
||
[ "$vol" != "${vol%\[MUTED\]}" ] && echo && exit
|
||
|
||
vol="${vol#Volume: }"
|
||
|
||
split() {
|
||
# For omitting the . without calling and external program.
|
||
IFS=$2
|
||
set -- $1
|
||
printf '%s' "$@"
|
||
}
|
||
|
||
vol="$(printf "%.0f" "$(split "$vol" ".")")"
|
||
|
||
if [ ! -e ~/.cache/bar_color ]; then
|
||
case 1 in
|
||
$((vol >= 100)) ) icon=" ━━━━━⏽ " ;;
|
||
$((vol >= 80)) ) icon=" ━━━━⏽━ " ;;
|
||
$((vol >= 60)) ) icon=" ━━━⏽━━ " ;;
|
||
$((vol >= 40)) ) icon=" ━━⏽━━━ " ;;
|
||
$((vol >= 20)) ) icon=" ━⏽━━━━ " ;;
|
||
$((vol >= 1)) ) icon=" ⏽━━━━━ " ;;
|
||
* ) echo " " && exit ;;
|
||
esac
|
||
echo "$icon$vol%"
|
||
else
|
||
case 1 in
|
||
$((vol >= 100)) ) icon=" ^C3^━━━━━^d^⏽ " ;;
|
||
$((vol >= 80)) ) icon=" ^C3^━━━━^d^⏽━ " ;;
|
||
$((vol >= 60)) ) icon=" ^C3^━━━^d^⏽━━ " ;;
|
||
$((vol >= 40)) ) icon=" ^C3^━━^d^⏽━━━ " ;;
|
||
$((vol >= 20)) ) icon=" ^C3^━^d^⏽━━━━ " ;;
|
||
$((vol >= 1)) ) icon=" ^d^⏽━━━━━ " ;;
|
||
* ) echo "^C4^ ^d^" && exit ;;
|
||
esac
|
||
echo "^C4^$icon^d^$vol%"
|
||
fi
|