tmux/splitWORKSTATION

63 lines
2.3 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

### 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 **jd** for working station
# If a session already exists {{{
if-shell -b 'tmux has-session -t jd' {
display-message "Attach to **jd** existing session"
## Attach to the first pane of the first window
## Only works from a running tmux
attach-session -t jd:1.1
}
# }}}
# If file was source from a running tmux
# This allow to run tmux source-file command outside of Tmux…
if-shell -b 'test -n $TMUX' {
# If no session already exists
if-shell '! tmux has-session -t jd' {
display-message "Create a new session for Workstation"
# A first window named **42**
new-session -A -sjd -n42
## Split the first window and move to 42 debops project
split-window -d -h -tjd:1.1 -c '/home/jegardai/repos/101010.debops'
## Split again the first window and move to 42 debops project
split-window -v -tjd:1.1 -c '/home/jegardai/repos/101010.debops'
# Kill first pane of the first window
# Little trick to avoid to set this directory as default for any new pane…
kill-pane -tjd:1.1
# Second window named **IPR**
new-window -d -nIPR -c '/home/jegardai/repos/ipr.debops'
# with 2 panes in IPR debops project
split-window -d -h -tjd:2.1 -c '/home/jegardai/repos/ipr.debops'
# Third window for APT upgrade
new-window -nAPT 'sudo apt update ; sudo aptitude full-upgrade ; sudo aptitude clean ; exec ${SHELL}'
# Fourth window for authentication tools
new-window -nAuth 'gpg --quiet --for-your-eyes-only --decrypt ~/.password-store/test.gpg ; logout'
split-window -h 'ssh-add -l | grep -qi -- "(ed25519)" || ssh-add ~/.ssh/id_ed25519 ; logout'
set-window-option synchronize-panes on
# Default pane should be jd:4.2
#select-pane -tjd:4.2
}
# If a default session still exists {{{
if-shell -b 'tmux has-session -t 0' {
# Kill it
kill-session -t 0
}
# }}}
}