Da Ubuntu keine aktuellen Pakete für TeXLive bereitstellt, habe ich es manuell installiert. Einige Programme benötigen jedoch TeXLive als Abhängigkeit. Also habe ich das TeXLive-Paket aus den Ubuntu-Repositorys installiert, zusätzlich zu der Version 2009. Ich habe dann meinen $ PATH so geändert, dass er die manuell installierte Version 2011 enthält, sodass Programme immer auf die neueste TeXLive-Version verweisen und diese verwenden. Bisher hat das gut funktioniert.
Aber hier ist der Schnappschuss: Als ich zum Bearbeiten meiner LaTeX-Dateien zu VIM wechselte, bemerkte ich nach zu großen Kopfschmerzen, dass VIM nur TeXLive2009 "sieht"! Siehe diesen Screenshot, links ist VIM, rechts ein Terminal:
Ich habe dann überprüft, was $ PATH VIM verwendet, und wie sich herausstellt, wird ein anderes verwendet, das NICHT auf TeXLive 2011 verweist. Siehe diesen Screenshot:
VIM:
:! echo $PATH
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Terminal:
echo $PATH
/usr/local/texlive/2011/bin/x86_64-linux:/usr/local/texlive/2011/bin/x86_64-linux:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Haben Sie eine Idee, wie Sie dies beheben können, damit meine LaTeX-Plugins TeXLive 2011 verwenden können, indem Sie VIM möglicherweise dazu bringen, denselben $ PATH zu verwenden? Jede Hilfe wäre sehr dankbar!
Antworten:
Es sieht so aus, als hätten Sie die
$PATH
Variable in einer Ihrer Shell-Konfigurationsdateien geändert , aber Sie starten VIM über ein Symbol oder einen Desktop-Menüeintrag. Die Dinge, die Sie in Shell-Konfigurationsdateien (wie~/.bashrc
oder/etc/profile
) festlegen, wirken sich nur auf die Anwendungen aus, die von der Shell gestartet wurden .Es gibt im Allgemeinen
zweidrei mögliche Ansätze für dieses Problem:[bearbeiten]
~/.profile
.[/bearbeiten]
Die lokale Lösung ist die sicherste (da sie nur ein Programm betrifft). Da Sie das System jedoch bereits durch die Installation von zwei gleichzeitigen Versionen eines Softwarepakets durcheinander gebracht haben, bin ich mir nicht sicher, ob Sie dies erschrecken wird. Wie auch immer, können Sie das tun , indem Sie den modifizierenden
.desktop
Eintrag für VIM in Ihrer Desktop - Umgebung und den dazugehörigen Befehl von etwas ändern wiegnome-terminal -c vim
zuPATH=(yourPathGoesHere) gnome-terminal -c vim
.Die globale Methode besteht darin, die
PATH
Variable in einer Datei unter zu ändern/etc/env.d/
. Es sollte ausreichen, eine Datei zu erstellen/etc/env.d/99-my_path_mod
, die enthältPATH=(yourPathGoesHere):$PATH
. Sie müssen neu starten, damit dies wirksam wird. (Nun, ein Neustart könnte vermieden werden, indem die Init-Ebene hin und her gewechselt wird, aber auf diese Weise ist dies weitaus einfacher.)[bearbeiten]
Die Lösung pro Benutzer ist möglicherweise die beste und kann, wie ich jetzt sehe, als "der richtige Weg" bezeichnet werden. Wie von Gilles (unten) hervorgehoben, sollten in der
~/.profile
Datei Umgebungsvariablen für alle Ihre Anmeldesitzungen festgelegt werden.quelle
~/.profile
und niemals in zu setzen~/.bashrc
. Das Richtige zu tun ist nicht schwierig und verhindert zukünftige Probleme .~/.profile
, daher kann meine Antwort irreführend sein. Aber in welchem Teil ist es falsch?/etc/profile
als Shell-Konfigurationsdatei ist technisch gesehen richtig, aber irreführend (es handelt sich um eine in der Shell geschriebene Konfigurationsdatei, nicht um eine Konfigurationsdatei der Shell). Nicht zu erwähnen~/.profile
ist eine große Auslassung, die allein Ihre Antwort „nicht nützlich“ macht./etc/profile
, sehe ich das ganz oben . Also, zumindest auf meinem System (Gentoo), die Datei kann „config - Datei des Shell“ genannt werden.Wo haben Sie die Ihres Benutzers geändert
PATH
? Normalerweise würde ich das so einstellen, dass~/.profile
es von Ihrem X-Sitzungsmanager (dh beim nächsten X-Login) abgeholt wird und auch für alle Anwendungen in Ihrer X-Sitzung gilt (z. B. Ihr Panel / Desktop, von dem aus Sie gvim starten). .quelle