wait=0 while :; do case ${1:-} in -w | --wait) wait=1 ;; *) break ;; esac shift done STR=$(swaymsg -t get_tree | jq -r 'recurse(.nodes[]) | select(.name == "__i3_scratch")' | grep kittyterm || true) if [ "$STR" == "" ]; then swaymsg '[title="kittyterm"]' scratchpad show emacsclient -c -a "" "$@" swaymsg '[title="kittyterm"]' scratchpad show else if [[ $wait -eq 0 ]]; then emacsclient -n -c -a "" "$@" else emacsclient -c -a "" "$@" fi fi