scripts/lib/g
Alexander Gehrke 7ba3dba2bc Add wrappers for terminals to make scripts terminal-agnostic
Scripts launching a terminal will now require x-terminal-emulator in the
path. A symlink for it can be created using `select-term.zsh`.
2021-07-05 13:11:42 +02:00

28 lines
729 B
Bash
Executable file

#!/bin/zsh
if [[ "${0:t}" == "g" ]]; then
echo "Symlink to g\$progname to start \$progname in tmux in a new terminal or reattach a tmux session named \$progname in a new terminal"
echo
echo "Symlink to g.\$progname to start \$progname in tmux in a new terminal regardless of existing tmux sessions"
exit 1
fi
if [[ -e /etc/zsh/zprofile ]]; then
. /etc/zsh/zprofile
fi
if [[ -e $HOME/.zshenv ]]; then
. $HOME/.zshenv
fi
prog=${${0:t}[2,-1]}
if [[ "$prog[1]" == "." ]]; then
prog=${prog[2,-1]}
action="tmux new-session ${prog}"
elif tmux list-sessions | grep -qe "^${prog}:"; then
action="tmux attach -t ${prog}"
else
action="tmux new-session -s ${prog} ${prog}"
fi
exec x-terminal-emulator -t G${prog} -e ${=action}