Je suis récemment passé de l' écran GNU à tmux .
Je le trouve assez similaire mais avec un support plus important (j'ai changé en raison d'un problème de temps d'échappement dans neovim - la résolution ne concernait que tmux).
Malheureusement, dans tmux, je ne parviens pas à trouver une commande similaire à celle-ci:
screen -X eval "chdir $(some_dir)"
La commande ci-dessus a changé le répertoire par défaut pour la nouvelle fenêtre / écran / volet à partir de l'écran GNU. Ainsi, lorsque j'ai appuyé sur Ctrl+ a(semblable à tmux Ctrl+ b), une nouvelle fenêtre s'est ouverte dans le $(some_dir)
répertoire.
Y at-il une chose similaire dans tmux?
REPONSE:
J'ai utilisé @Lqueryvg answer et je l'ai combiné avec la suggestion de @Vincent Nivoliers à partir d'un commentaire, ce qui m'a donné une nouvelle liaison pour une commande attach -c "#{pane_current_path}"
qui définit mon répertoire actuel comme répertoire par défaut.
Merci.
la source
new-window -c "#{pane_current_path}"
fonctionne mais ce que j’ai besoin, c’est d’établir le chemin de façon permanente, c’est-à-dire: je travaille dans un projet dans / aaa / bbb mais j’ai quand même changé de chemin pour dire / ccc / ddd et recommencer à zéro avec Cb et c que je veux. atterrir une fois de plus dans / aaa / bbb. Pouvez-vous penser à une solution à cela?.tmux.conf
. De cette façon, je n'ai qu'à naviguer une fois dans le dossier, puis à créer mes fenêtres / fenêtres à partir de là, mais je reconnais que ce n'est pas une solution à votre problème, c'est pourquoi je n'ai pas posté de réponse!Réponses:
Commencez
tmux
comme suit:Désormais, toutes les nouvelles fenêtres (ou volets) que vous créez commenceront dans un répertoire
/aaa/bbb
, quel que soit le répertoire en cours du volet en cours.Si vous souhaitez modifier le répertoire par défaut une fois
tmux
opérationnel, utilisezattach-session
avec-c
.Citant la
tmux
page de manuel pourattach-session
:Par exemple:
Ctrl+b :
attach -c /ddd/eee
Les nouvelles fenêtres (ou volets) vont maintenant démarrer dans le répertoire
/ddd/eee
, quel que soit le répertoire du volet actuel.la source
attach -c "#{pane_current_path}"
ce qui serait le même que ce que j'ai eu à l'écran. Merci.attach -c
est exactement ce que je cherchais. MerciPour ceux qui recherchent peut-être un peu plus de références que la réponse sélectionnée, il existe une autre bonne réponse à cette question sur StackOverflow:
https://stackoverflow.com/questions/27307815/how-to-change-the-starting-directory-of-a-tmux-session
Ce qui fournit des moyens de le faire sans quitter la session, et pour ceux qui utilisent tmux de manière multi-session (comme moi), la réponse ci-dessus donne un contexte un peu meilleur quant au fonctionnement de
attach
/attach-session
.Voir les deux réponses disponibles pour différentes manières de les utiliser. J'ai trouvé les deux utiles et perspicaces.
la source