# # Defines tmux aliases and provides for auto launching it at start-up. # # Authors: # Sorin Ionescu # Colin Hebert # Georges Discry # # Return if requirements are not found. if (( ! $+commands[tmux] )); then return 1 fi # # Auto Start # if [[ -z "$TMUX" ]] && ( \ ( [[ -n "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' remote ) || ( [[ -z "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' local ) \ ); then tmux_session='#Prezto' if ! tmux has-session -t "$tmux_session" 2> /dev/null; then # Ensure that tmux server is started. tmux start-server # 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 fi exec tmux new-session -t "$tmux_session" fi # # Aliases # alias tmuxn='tmux new-session -s' # [name] create new named session; if don't need name just use 'tmux' alias tmuxa='tmux attach-session' # optionally [-t] [name] to attach to specific session alias tmuxl='tmux list-sessions' alias tmuxr='tmux rename-session -t' # [name] [new name] alias tmuxk='tmux kill-session -t'