06461716a5
I'm pretty sure I'll never use alacritty again.
27 lines
835 B
Bash
Executable file
27 lines
835 B
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
# Toggle a scratch terminal window. A scratch terminal is a disposable terminal
|
|
# for one-off, quick commands that don't warrant a dedicated terminal.
|
|
|
|
SCRID=scratch
|
|
CMD=${1:-'tmux new-session -A -s scratch -n scratch'}
|
|
focused=$(xdotool getactivewindow)
|
|
scratch=$(xdotool search --onlyvisible --classname $SCRID)
|
|
if [[ -n $scratch ]]; then
|
|
if [[ $focused == $scratch ]]; then
|
|
xdotool windowkill $scratch
|
|
else
|
|
xdotool windowactivate $scratch
|
|
fi
|
|
elif command -v urxvt >/dev/null; then
|
|
urxvt -name $SCRID \
|
|
-e $SHELL -c "$CMD"
|
|
elif command -v xst >/dev/null; then
|
|
xst -t $SCRID -n $SCRID -c $SCRID \
|
|
-f "$(xrdb -query | grep 'scratch\.font' | cut -f2)" \
|
|
-e $SHELL -c "$CMD"
|
|
else
|
|
>&2 echo "No shell to launch the scratch terminal with"
|
|
exit 1
|
|
fi
|