38 lines
699 B
Bash
Executable File
38 lines
699 B
Bash
Executable File
#!/usr/bin/env zsh
|
|
|
|
let just_list=0
|
|
local operation="-d"
|
|
local jq_filter_neg="| not"
|
|
local ignored=()
|
|
|
|
while getopts 'ldi:' name; do
|
|
case "${name}" in
|
|
l)
|
|
just_list=1
|
|
;;
|
|
d)
|
|
jq_filter_neg=""
|
|
operation="-s"
|
|
;;
|
|
i)
|
|
ignored+="${OPTARG}"
|
|
;;
|
|
esac
|
|
done
|
|
|
|
SCRIPT=".[] | select(.enabled${jq_filter_neg}) | .name"
|
|
|
|
set -e
|
|
displays=("${(0)$(wlr-randr --json | jq --raw-output0 "${SCRIPT}")}")
|
|
set +e
|
|
|
|
displays=(${displays:|ignored})
|
|
|
|
if ((just_list)); then
|
|
printf '%s\0' ${displays}
|
|
else
|
|
for display in ${displays}; do
|
|
way-displays "${operation}" DISABLED "${display}"
|
|
done
|
|
fi
|