49 lines
865 B
Bash
Executable file
49 lines
865 B
Bash
Executable file
#!/bin/bash
|
|
set -e
|
|
|
|
function isExistingDeck {
|
|
set +e
|
|
sessions=$(tmux list-sessions)
|
|
set -e
|
|
|
|
if [[ $sessions == *"bunkdeck"* ]]; then
|
|
return 0
|
|
else
|
|
return 1
|
|
fi
|
|
}
|
|
|
|
function startNewDeck {
|
|
tmux new -d -s bunkdeck heed
|
|
tmux split-window -h -t bunkdeck -p 70
|
|
tmux split-window -t bunkdeck:0.0 -v -p 10
|
|
tmux send-keys -t bunkdeck:0.1 'proclaim' C-m
|
|
tmux send-keys -t bunkdeck:0.2 'cowsay "press [CTRL+b then o] to cycle through panes"' C-m
|
|
tmux attach -t bunkdeck:0.2
|
|
}
|
|
|
|
function killDeck {
|
|
tmux kill-session -t bunkdeck
|
|
}
|
|
|
|
case $1 in
|
|
|
|
kill)
|
|
killDeck
|
|
;;
|
|
"")
|
|
if isExistingDeck; then
|
|
tmux attach-session -t bunkdeck
|
|
else
|
|
startNewDeck
|
|
fi
|
|
;;
|
|
*)
|
|
echo "usage: bunkdeck [COMMAND]"
|
|
echo
|
|
echo "commands:"
|
|
echo " (none) attach to existing bunkdeck or start new one"
|
|
echo " kill kill running bunkdeck"
|
|
exit 1
|
|
;;
|
|
esac
|