Files
dotfiles/scripts/brightness_hdmi
T
2022-07-23 15:08:47 +02:00

34 lines
975 B
Bash
Executable File

#!/bin/zsh
screen="HDMI-1"
dir_icons="/usr/local/bin/icons"
current_bright_float=$(xrandr --verbose | grep "$screen" -A10000 | grep 'Brightness:' | sed 's/[^0-9,.]//g')
current_bright_int=$(echo $((current_bright_float*100 + 0.5)) | sed "s/\..*//" ) # cast to int
if [[ "$1" == "up" || "$1" == "+" ]]; then
new_bright_int=$(($current_bright_int + 1))
fi
if [[ "$1" == "down" || "$1" == "-" ]]; then
new_bright_int=$(($current_bright_int - 1))
fi
if [[ "${#new_bright_int}" -eq 2 ]]; then # cast to float, two-digit number
new_bright_float=$((0.$new_bright_int))
fi
if [[ "${#new_bright_int}" -eq 1 ]]; then # cast to float, one-digit number
new_bright_float=$((0.0$new_bright_int))
fi
if [[ "$new_bright_float" -lt "0" ]]; then # brightness must be positive
exit
fi
xrandr --output $screen --brightness $new_bright_float
# send notification
dunstify -a "Screen" \
"Screen ($screen)" \
"Brightness: $new_bright_int%" \
-r 100 \
-i "$dir_icons"/sun.svg