diff --git a/bunkdeck b/bunkdeck index 4330af1..078b6eb 100755 --- a/bunkdeck +++ b/bunkdeck @@ -1,35 +1,19 @@ -#!/bin/bash -e +#!/bin/bash +set -e -case $1 in - - kill) - # kill - ;; - - restart) - # restart - ;; - - "") - newDeck - ;; - - *) - # error - ;; -esac - - -function newDeck { +function isExistingDeck { set +e sessions=$(tmux list-sessions) set -e if [[ $sessions == *"bunkdeck"* ]]; then - tmux attach-session -t bunkdeck - exit 1 + 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 @@ -37,3 +21,29 @@ function newDeck { 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