dotwryn/bin/butterfree/xorg.zsh

56 lines
1009 B
Bash

#!/bin/zsh
source "$HOME/.config/wryn/env.zsh"
NATIVE_MONITOR='eDP1'
GET_PRIMARY_MONITOR() {
xrandr \
| grep 'primary' \
| awk '{print $1;}' \
| head -n 1
}
PRIMARY_MONITOR=$(GET_PRIMARY_MONITOR)
GET_ALL_EXTERNAL_MONITORS() {
xrandr \
| grep ' connect' \
| awk '{print $1;}' \
| grep -v "$NATIVE_MONITOR" \
2>/dev/null
}
GET_DEFAULT_EXTERNAL_MONITOR() {
GET_ALL_EXTERNAL_MONITORS | head -n 1
}
EXTERNAL_MONITOR=$(GET_DEFAULT_EXTERNAL_MONITOR)
DISCONNECT_OTHER() {
local SFX="$1"
local INACTIVE_MONITORS=$(\
xrandr --listmonitors \
| sed '1d' | awk '{print $NF;}' \
| grep -v "^$(GET_PRIMARY_MONITOR)$"
)
for ACTIVE_MONITOR in ${@:2}
do
INACTIVE_MONITORS=$(echo $INACTIVE_MONITORS | grep -v "^$ACTIVE_MONITOR$")
done
local MONITOR
for MONITOR in $INACTIVE_MONITORS
do
xrandr --output $MONITOR --off
done
sleep 1
$DOTWRYN/bin/set-background random
[ $SFX ] && ( $DOTWRYN/bin/play-sound $SFX ) &
return 0
}
NOTIFY() {
notify-send 'xrandr screenlayout' $@
}