bin: move function from volume to helpers, add notifications to brightness

This commit is contained in:
Konstantin Koslowski 2021-05-13 23:47:26 +02:00
parent b95cfc47a4
commit 8708e3f6f5
3 changed files with 33 additions and 21 deletions

View file

@ -1,7 +1,11 @@
#!/bin/bash
source $HOME/.config/sway/bin/sway_helpers
DEVICE=sysfs/backlight/intel_backlight
APP=light
NOTIFY_APP="dunstify -a brightness -h string:x-dunst-stack-tag:brightness"
ICON=$HOME/.local/share/icons/Tela-circle-dark/16/panel/xfpm-brightness-lcd.svg
APP="/usr/bin/light -s $DEVICE"
PRG1="●"
PRG2="◌"
## main
_log BRIGHTNESS INFO args: $*
@ -9,13 +13,20 @@ _check_app $APP
case $1 in
d*)
light -s $DEVICE -U 10
$APP -U 10
BR=$($APP)
$NOTIFY_APP -i $ICON "$BR" "$(getProgressString 10 "$PRG1" "$PRG2" $BR)"
;;
i*)
light -s $DEVICE -A 10
$APP -A 10
BR=$($APP)
$NOTIFY_APP -i $ICON "$BR" "$(getProgressString 10 "$PRG1" "$PRG2" $BR)"
;;
*)
echo "invalid argument: \"$1\""
"-h"|"--help")
echo "arguments: [decrease|increase]"
;;
*)
BR=$($APP)
$NOTIFY_APP -i $ICON "$BR" "$(getProgressString 10 "$PRG1" "$PRG2" $BR)"
;;
esac

View file

@ -43,3 +43,20 @@ function _set_inhibit() {
;;
esac
}
function getProgressString() {
ITEMS="$1" # The total number of items(the width of the bar)
FILLED_ITEM="$2" # The look of a filled item
NOT_FILLED_ITEM="$3" # The look of a not filled item
STATUS="$4" # The current progress status in percent
# calculate how many items need to be filled and not filled
FILLED_ITEMS=$(echo "((${ITEMS} * ${STATUS})/100 + 0.5) / 1" | bc)
NOT_FILLED_ITEMS=$(echo "$ITEMS - $FILLED_ITEMS" | bc)
# Assemble the bar string
msg=$(printf "%${FILLED_ITEMS}s" | sed "s| |${FILLED_ITEM}|g")
msg=${msg}$(printf "%${NOT_FILLED_ITEMS}s" | sed "s| |${NOT_FILLED_ITEM}|g")
echo "$msg"
}

View file

@ -11,22 +11,6 @@ VOL1="●"
# echo -e '\u25cc'
VOL2="◌"
function getProgressString() {
ITEMS="$1" # The total number of items(the width of the bar)
FILLED_ITEM="$2" # The look of a filled item
NOT_FILLED_ITEM="$3" # The look of a not filled item
STATUS="$4" # The current progress status in percent
# calculate how many items need to be filled and not filled
FILLED_ITEMS=$(echo "((${ITEMS} * ${STATUS})/100 + 0.5) / 1" | bc)
NOT_FILLED_ITEMS=$(echo "$ITEMS - $FILLED_ITEMS" | bc)
# Assemble the bar string
msg=$(printf "%${FILLED_ITEMS}s" | sed "s| |${FILLED_ITEM}|g")
msg=${msg}$(printf "%${NOT_FILLED_ITEMS}s" | sed "s| |${NOT_FILLED_ITEM}|g")
echo "$msg"
}
function notify() {
VOLUME=$(pactl list sinks | grep "Name: $SINK" -A 8 | grep -oE '[0-9]*%' | head -n 1 | sed 's/%//')
MUTE=$(pactl list sinks | grep "Name: $SINK" -A 8 | grep 'Mute:' | cut -d " " -f 2)