Existe-t-il un moyen de recharger les variables d'environnement dans emacs?

8

Quand emacs démarre, il hérite des variables d'environnement définies à ce moment, soit dans l'application de lancement (Linux), soit dans un référentiel central (le registre Windows).

Sous Windows, les variables d'environnement peuvent être définies globalement. Comment pourrais-je inviter emacs à actualiser sa liste de variables d'environnement?

Je m'intéresse également aux moyens de rafraîchir les variables sous Linux (celles modifiées dans le shell qui a lancé emacs), difficile, il semble beaucoup plus difficile car il n'y a pas de référentiel central de variables d'environnement. Peut-être en jouant avec emacsclient?

Norswap
la source
Pourriez-vous expliquer un peu quel problème vous essayez de résoudre? Pourquoi avez-vous besoin de communiquer à travers l'environnement comme ça?
djf
Un cas simple consiste à installer un nouveau programme en ligne de commande. Sous Windows, il peut se retrouver dans "C: \ Program Files \ My Program \" par exemple. Pour utiliser ce programme sur la ligne de commande, je dois ajouter ce chemin à la variable d'environnement PATH. J'utilise le shell emacs, et donc je dois redémarrer emacs (ou ajouter manuellement la variable à l'environnement dans emacs) afin de pouvoir utiliser le nouveau programme.
Norswap

Réponses:

2

Vous pouvez peut-être créer un script externe qui collecte les noms et les valeurs des variables d'environnement, puis envoie ces paires nom-valeur aux emacs en cours d'exécution via emacsclient, afin qu'emacs puisse définir son propre environnement en fonction des valeurs reçues avec setenv.

À M
la source