{ writeDashBin, xdotool, xorg }: writeDashBin "xwaitforwindow" '' # usage: xwaitforwindow ARGS # see xdotool search for possible ARGS # example: xwaitforwindow -name WINDOWNAME set -efu if id=$(${xdotool}/bin/xdotool search "$@"); then printf 'waiting for window %#x\n' "$id" >&2 exec ${xorg.xprop}/bin/xprop -spy -id "$id" >/dev/null else printf 'no window found with xdotool search %s\n' "$*" >&2 exit 1 fi ''