2012-03-26 17:32:30 +00:00
|
|
|
#
|
|
|
|
# Defines tmux aliases and provides for auto launching it at start-up.
|
|
|
|
#
|
|
|
|
# Authors:
|
|
|
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
2012-03-26 22:26:42 +00:00
|
|
|
# Colin Hebert <hebert.colin@gmail.com>
|
2012-03-26 17:32:30 +00:00
|
|
|
#
|
|
|
|
|
2012-07-23 19:00:44 +00:00
|
|
|
# Return if requirements are not found.
|
|
|
|
if (( ! $+commands[tmux] )); then
|
|
|
|
return 1
|
|
|
|
fi
|
|
|
|
|
2012-08-04 18:48:32 +00:00
|
|
|
#
|
2012-03-26 17:32:30 +00:00
|
|
|
# Auto Start
|
2012-08-04 18:48:32 +00:00
|
|
|
#
|
|
|
|
|
2012-03-28 16:41:39 +00:00
|
|
|
if [[ -z "$TMUX" ]] && zstyle -t ':omz:module:tmux' auto-start; then
|
2012-03-20 15:40:43 +00:00
|
|
|
tmux_session='#OMZ'
|
|
|
|
|
|
|
|
if ! tmux has-session -t "$tmux_session" 2> /dev/null; then
|
|
|
|
# Disable the destruction of unattached sessions globally.
|
|
|
|
tmux set-option -g destroy-unattached off &> /dev/null
|
|
|
|
|
|
|
|
# Create a new session.
|
|
|
|
tmux new-session -d -s "$tmux_session"
|
|
|
|
|
|
|
|
# Disable the destruction of the new, unattached session.
|
|
|
|
tmux set-option -t "$tmux_session" destroy-unattached off &> /dev/null
|
|
|
|
|
|
|
|
# Enable the destruction of unattached sessions globally to prevent
|
|
|
|
# an abundance of open, detached sessions.
|
|
|
|
tmux set-option -g destroy-unattached on &> /dev/null
|
2012-03-26 17:32:30 +00:00
|
|
|
fi
|
2012-03-20 15:40:43 +00:00
|
|
|
|
|
|
|
exec tmux new-session -t "$tmux_session"
|
2012-03-26 17:32:30 +00:00
|
|
|
fi
|
|
|
|
|
2012-08-04 18:48:32 +00:00
|
|
|
#
|
2012-07-03 17:50:25 +00:00
|
|
|
# Aliases
|
2012-08-04 18:48:32 +00:00
|
|
|
#
|
|
|
|
|
2012-07-03 17:50:25 +00:00
|
|
|
alias ta="tmux attach-session"
|
|
|
|
alias tl="tmux list-sessions"
|