.circleci
.docker
config
bin
colorschemes
etc
local
altaria
butterfree
bin
default
gamedock
hdmidock
runedock
runeundock
undock
workdock
xorg.zsh
pikachu
umbreon
scwrypts
terminfo
user
i3.conf
i3.config.yaml
rofi.theme.rasi
tsconfig.json
xinitrc.common
xinitrc.i3wm
xinitrc.kde
resume
scwrypts
setup
vim
zsh
.gitattributes
.gitignore
.gitmodules
README.md
56 lines
1.0 KiB
Bash
56 lines
1.0 KiB
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} ] && ( scwrypts play sfx -- ${SFX} ) &
|
|
return 0
|
|
}
|
|
|
|
NOTIFY() {
|
|
notify-send 'xrandr screenlayout' $@
|
|
}
|