diff options
author | Archie Hilton (thytom) <archie.hilton1@gmail.com> | 2019-10-22 00:17:37 +0100 |
---|---|---|
committer | Archie Hilton (thytom) <archie.hilton1@gmail.com> | 2019-10-22 00:17:37 +0100 |
commit | 9a22deb48705cc1b94b955cc8a9f0a72f8ac7e4e (patch) | |
tree | 85eb6101cb0cd2359bc96223a89e7b020575540a /modules/volumebar | |
parent | e611703e037621493ead5a4c6d4debbdf4597904 (diff) |
Changed volumebar slightly
Diffstat (limited to 'modules/volumebar')
-rwxr-xr-x | modules/volumebar | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/modules/volumebar b/modules/volumebar index aab9cee..f2a9fa0 100755 --- a/modules/volumebar +++ b/modules/volumebar @@ -2,33 +2,38 @@ # Prints out the volume percentage -VOLUME_WIDTH=15 -VOLUME_SLIDER='|' -VOLUME_RAIL='-' +# Dependencies: bc + +VOLUME_WIDTH=9 +VOLUME_SLIDER='⬤' +VOLUME_RAIL='◯' VOLUME_MUTED='muted' -PREFIX='VOL' +PREFIX='' + +# If volume is >100 +ALERT='!!!' get_volume(){ active_sink=$(pacmd list-sinks | awk '/* index:/{print $3}') curStatus=$(pacmd list-sinks | grep -A 15 "index: $active_sink$" | awk '/muted/{ print $2}') volume=$(pacmd list-sinks | grep -A 15 "index: $active_sink$" | grep 'volume:' | grep -E -v 'base volume:' | awk -F : '{print $3}' | grep -o -P '.{0,3}%'| sed s/.$// | tr -d ' ') - slider_position=$(( $volume / $VOLUME_WIDTH )) + slider_position=$(echo "scale=scale(1.0); x = ($volume / 100) * $VOLUME_WIDTH; scale=scale(1); x / 1" | bc) if [ "${curStatus}" = 'yes' ] then echo "$VOLUME_MUTED" exit 0 else - for i in $(seq 1 $slider_position); do - BAR=$BAR$VOLUME_RAIL - done - BAR=$BAR$VOLUME_SLIDER - for i in $(seq $slider_position $VOLUME_WIDTH); do - BAR=$BAR$VOLUME_RAIL + for i in $(seq 1 $VOLUME_WIDTH); do + [[ $i = $slider_position ]] && BAR=$BAR$VOLUME_SLIDER + [[ $i < $slider_position ]] && BAR=$BAR$VOLUME_SLIDER + [[ $i > $slider_position ]] && BAR=$BAR$VOLUME_RAIL done fi + [[ $volume -gt 100 ]] && PREFIX=$PREFIX$ALERT + echo "$PREFIX$BAR" } |