Files
dotfiles/scripts/displays.sh

44 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
function primary() {
xrandr | grep primary | awk '{print $1}'
}
displays=$(xrandr --listactivemonitors | grep -v Monitors | awk '{print $NF}')
case "$1" in
"auto")
echo "$displays" | while read display; do
xrandr --output $display --auto
done
;;
"connected")
echo "$displays"
;;
"lemonbar")
echo "DISP ${displays[@]}" | sed "s/ /:/g"
;;
*)
# -F Fix strings, -x exactly, -q quiet
if echo "$displays" | grep -Fqx "$1"; then
case "$2" in
"off")
action="--off"
;;
"mirror")
action="--same-as $(primary)"
;;
"left")
action="--left-of $(primary) --auto"
;;
"right")
action="--right-of $(primary) --auto"
;;
*)
exit 1
;;
esac
xrandr --output $1 $action
fi
esac