bin: move function from volume to helpers, add notifications to brightness
This commit is contained in:
parent
b95cfc47a4
commit
8708e3f6f5
3 changed files with 33 additions and 21 deletions
|
@ -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
|
||||
|
|
|
@ -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"
|
||||
}
|
||||
|
||||
|
|
|
@ -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)
|
||||
|
|
Loading…
Reference in a new issue