#
# Defines tmux aliases and provides for auto launching it at start-up.
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
# Colin Hebert <hebert.colin@gmail.com>
# Return if requirements are not found.
if (( ! $+commands[tmux] )); then
return 1
fi
# Auto Start
if [[ -z "$TMUX" ]] && zstyle -t ':omz:module:tmux' auto-start; then
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
exec tmux new-session -t "$tmux_session"
# Aliases
alias ta="tmux attach-session"
alias tl="tmux list-sessions"