web-dev-qa-db-fra.com

Comment définir des variables d'environnement dans une session Emacs lancée à partir de Gnome Panel?

Mon fichier .bash_env définit plusieurs variables d'environnement, notamment PATH et EMAIL, mais dans une session Emacs lancée à partir du panneau Gnome (commande: "/usr/bin/emacs23 %F"), ces variables ne avoir les valeurs attendues. J'ai déjà rencontré ce problème auparavant (voir cet article ). Je l'ai corrigé ensuite en recherchant .bash_env dans mon fichier .xsession. De toute évidence, cela ne fonctionne plus.

Les variables sont correctement définies si je lance manuellement Emacs depuis un terminal. Bizarrement, ils ne sont pas configurés si je change le programme de lancement du panneau pour qu’il exécute Emacs dans un terminal (je penserais que cela lancerait Bash avant de lancer Emacs).

Comment puis-je m'assurer que l'environnement Bash habituel est configuré pour la session Emacs?

6
Chris Conway

Définissez les variables d'environnement dans ~/.profile (et source ~/.profile à partir de ~/.xsession si vous utilisez un .xsession). Ainsi, ils seront disponibles partout, car ils seront définis lorsque vous vous connecterez.

~/.bash_env n'est pas le bon endroit pour les variables d'environnement (malgré son nom). (Malgré son existence (c'est $BASH_ENV, n'est-ce pas?), Je n'ai pas encore trouvé le bon usage.)

Lorsque vous exécutez Emacs dans un terminal, il s'agit d'un sous-processus de l'émulateur de terminal. Il n'y aurait aucune raison d'avoir un Shell entre les deux.

5
Gilles

/usr/bin/zsh -c emacs a travaillé pour moi.

1
foo

Ajoutez simplement bash à votre commande de lancement, comme bash codecodecode emacs %stuff (c'est-à-dire ajoutez simplement bash au début de la ligne) et cela devrait fonctionner.

0
RolandiXor