2009-05-19 12 views
5

Lorsque je lance gvim à partir d'un terminal, je peux accéder à toutes mes variables d'environnement.Comment obtenir des variables d'environnement à partir de gvim

Mais si je lance gvim depuis un menu ou depuis le lanceur "Lancer l'application", toutes mes variables d'environnement ne sont pas accessibles.

Comment puis-je accéder aux variables d'environnement définies dans mon bashrc si gvim n'est pas lancé à partir d'un terminal?

Ces variables sont définies dans ~/.bashrc

Distro: Ubuntu Intrepid

Note1: le lanceur "Exécuter application" est accessible en appuyant sur ALT + <F2>

+0

Comment définissez-vous ces variables d'environnement dans votre bashrc? Aussi est-ce votre propre fichier ~/.bashrc personnel ou est-ce/etc/bashrc où vous réglez ces variables? – Andy

+0

Pourrions-nous avoir plus de détails. Un exemple d'une variable que vous ne pouvez pas accéder ($ PATH?) Quelle distribution? Qu'est-ce que "Run Application" lanceur? Sur le bureau ou dans une applet ou quoi. – Whaledawg

Répondre

7

Vous devriez être en mesure de lire toutes les variables d'environnement réelles, par exemple

:!echo $PATH 

Votre problème concerne les variables d'environnement personnel. Pourquoi essayez-vous de lire les variables d'environnement dans gvim? Il pourrait y avoir une meilleure façon de faire les choses.

Portée des variables d'environnement
Lorsque vous vous connectez à votre ordinateur, les sources de bash le fichier .bash_profile.
Lorsque vous exécutez un terminal, le fichier .bashrc est source, vos variables d'environnement personnel sont donc disponibles dans ce terminal et dans les sous-cases. Si vous n'exportez pas les variables de votre fichier .bashrc, ces variables ne seront pas disponibles dans l'environnement général et ne seront disponibles qu'après avoir exécuté un terminal si vous les avez exportées.

Étant donné que vous exécutez gvim à l'aide d'un programme de lancement d'application, rien ne lit votre fichier .bashrc pour créer ces variables d'environnement pour vous.

Pour certains info sur les variables d'environnement shell bourne, voir la section 9.1.2

donc un bon endroit pour mettre:

MYENVIRONMENTVARIABLE=new value of environment variable 
export MYENVIRONMENTVARIABLE 

est dans le .bash_profile, et si vous voulez faire une Si vous modifiez la variable, assurez-vous de la réexporter (et si vous souhaitez que les modifications soient permanentes, modifiez le fichier .bash_profile).

Notez que la valeur de cette variable d'environnement sera disponible pour tous les nouveaux shells, mais les shells existants ne reliront probablement pas les variables d'environnement.

+1

Fin de la partie, mais: Le déplacement de ces variables d'environnement de .bashrc vers .profile peut aider. '.profile' est exécuté lors de la connexion; tandis que .bashrc n'est exécuté que lors de l'ouverture de bash après la connexion. – jpaugh

Questions connexes