diff --git a/plugins/tmux/init.zsh b/plugins/tmux/init.zsh new file mode 100644 index 00000000..ffd57380 --- /dev/null +++ b/plugins/tmux/init.zsh @@ -0,0 +1,33 @@ +# +# Defines tmux aliases and provides for auto launching it at start-up. +# +# Authors: +# Sorin Ionescu +# +# Usage: +# To auto start it, add the following to zshrc: +# +# # Auto launch tmux at start-up. +# zstyle -t ':omz:plugin:tmux:auto' start 'yes' +# + +# Aliases +alias ta="tmux attach-session" +alias tl="tmux list-sessions" + +# Auto Start +if (( $SHLVL == 1 )) && zstyle -t ':omz:plugin:tmux:auto' start; then + (( SHLVL += 1 )) && export SHLVL + + session="$( + tmux list-sessions 2> /dev/null \ + | cut -d':' -f1 \ + | head -1)" + + if [[ -n "$session" ]]; then + exec tmux attach-session -t "$session" + else + exec tmux new-session + fi +fi +