web-dev-qa-db-fra.com

Comment puis-je commencer tmux avec mon environnement actuel?

Ou au moins la partie de celui-ci, cela a du sens.

Plus spécifiquement, j'ai des variables d'environnement, qui ont été exportées en exécutant un script pour créer un environnement adéquat pour la tâche à accomplir. Lorsque je gère TMUX, ces variables ne sont nulle partement, ni dans l'environnement mondial ou de session. Bien sûr, je peux exécuter ce script à nouveau mais ...

Je serais satisfait si je pouvais spécifier les Vars particuliers dans mon .tmux.conf Fichez cependant:

set-environment VAR $VAR

Ne fait pas ce que je m'attendais.

Merci d'avance :)

Ah, je pense que je sais pourquoi.

Lors du démarrage d'une deuxième session de TMUX, disons dans un autre terminal, il copie l'environnement de la première. Le premier prend à peu près l'environnement actuel de la coquille d'appel et ajoute du tmuxiness à celui-ci.

Ma solution de contournement actuelle ne fait qu'empêcher et commencer mes sessions TMux lorsque je dois changer d'environnement.

35
Phluks

Vous devez configurer l'option tmux Option de session update-environment Pour inclure les variables que vous souhaitez être mises à jour lors de la création de nouvelles sessions. La valeur par défaut inclut plusieurs variables communes X11 et SSH:

DISPLAY SSH_ASKPASS SSH_AUTH_SOCK SSH_AGENT_PID SSH_CONNECTION WINDOWID XAUTHORITY

Pour ajouter vos variables, utilisez le set-optiontmux Commande avec son -g et -a Flags (ajouter à la valeur "globale" existante (par défaut)). Dans ton ~/.tmux.conf:

set-option -ga update-environment ' YOUR_VAR'

Assurez-vous d'inclure l'espace principal de sorte que votre nom de variable soit séparé du nom de fuite de la valeur par défaut.

64
Chris Johnsen