### Session -------------------------------------------------------------- # -sXX : XX session ID or name # -nWINDOW_NAME : Name of the window… # -d : Don't attache to the new session/window/pane/… # -tXX:YY.ZZ : # XX : session ID or name # YY : (optional) Window ID # ZZ : (optional) Pane ID # YY and ZZ should exists to be able to change the parameters,… # monitor-activity : permet de mettre en avant une fenêtre quand son contenu reçoit un événement # 'exec ${SHELL}' : Allow to keep the pane running after the program exists # Manage session named **toto** for laptop # If a session already exists {{{ if-shell -b 'tmux has-session -t toto' { display-message "Attach to **toto** existing session" ## Attach to the first pane of the first window attach-session -t toto:1.1 } # }}} # If no session already exists if-shell '! tmux has-session -t toto' { display-message "Create a new session for Laptop" # A first window named **mail** # with mutt running in the first pane new-session -A -stoto -nmail 'mutt ; exec ${SHELL}' ## Split the first window for APT upgrade split-window -h -p 25 -ttoto:1.1 'sudo aptitude update ; sudo aptitude full-upgrade ; exec ${SHELL}' # # Second window named **Xt0p** with btop running new-window -d -nXt0p 'btop ; exec ${SHELL}' # Third window named **ch4t** with weechat running new-window -d -nch4t 'weechat ; exec ${SHELL}' # Fourth window named **git** in main repos directory new-window -d -ngit -c '/home/jegardai/repos' # Fifth window for authentication tools new-window -nAuth 'gpg --quiet --for-your-eyes-only --decrypt ~/.password-store/test.gpg ; exec ${SHELL}' split-window -h 'ssh-add -l | grep -qi -- "(ed25519)" || ssh-add ~/.ssh/id_ed25519 ; exec ${SHELL}' set-window-option synchronize-panes on # Default pane should be toto:5.2 #select-pane -ttoto:5.2 } # If a default session still exists {{{ if-shell -b 'tmux has-session -t 0' { # Kill it kill-session -t 0 } # }}}