J'ai un simple fichier .bashrc
pour le moment qui me permet de toujours ouvrir le même terminal (réouvrir, en fait) exécutant tmux. La partie importante est indiquée ci-dessous.
En gros, lorsque vous exécutez tmux attach -d
, vous déconnectez toute session tmux
en cours d'exécution, ce qui ferme la fenêtre de terminal ouverte (puisque je l'ai ouverte avec la commande tmux
.). tmux
est toujours en cours d'exécution, donc appeler un terminal avec tmux attach -d
rouvre cette session grâce à une petite ligne dans le fichier de configuration tmux.
Cela fonctionne très bien, mais j'aimerais maintenant avoir la fonctionnalité qui ouvre une fenêtre de terminal dans le répertoire où je clique sur "Ouvrir le terminal ici".
Je comprends que je devrais faire ce qui suit:
tmux
à "C-m C" (créer un nouveau panneau)cd
vers le répertoire en coursEst-ce possible? J'ai une connaissance très limitée de ce genre de choses, par conséquent je demande.
J'ai regardé autour et trouvé ce Gist (également présenté ci-dessous). Cela a du sens, mais je ne sais pas comment obtenir la variable ${TARGET}
dans le fichier .bashrc
.
. bashrc
116 # Start tmux every time we call up a terminal
117 [[ $TERM != "screen" ]] && exec tmux attach -d
tmux.conf
1 #if run as "tmux attach", create a session if one does not already exist
2 new-session -n $Host
Le fichier Gist
tmux_pwd () {
[ -z "${TMUX}" ] && return
TARGET=\-t$(tmux display-message -p "#S")
tmux set-window-option ${TARGET} default-path $PWD > /dev/null
(( sleep 300;
tmux set-window-option ${TARGET} default-path ~/Development > /dev/null; ) & ) > /dev/null 2>&1
}
alias pwd="\pwd; tmux_pwd"
Tmux s'ouvre toujours avec votre répertoire de travail actuel.
Par exemple, si vous êtes dans/home/utilisateur/Bureau /, la session tmux démarrera à partir de ce chemin uniquement.
Et s'il vous plaît élaborer votre question.