2015-03-16 13 views
8

Ich hatte NVM bereits installiert, dann entdeckte ich oh-my-zsh und installierte das. Es scheint ein nvm plugin zu haben, welches ich in .shrc aktiviert habe.NVM klebt nicht mit Alias ​​Standard mit ZSH (oh-my-zsh)

Auch habe ich in meinem .zprofile

export NVM_DIR="/Users/me/.nvm" 
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm 

Jetzt kann ich NVM verwenden, aber wenn ich alias Standard auf eine andere Version gesetzt, NVM schaltet das nächste Mal, wenn ich die Schale öffnen zurück.

$ iojs -v 
v1.2.0 
$ which iojs 
/Users/me/.nvm/versions/io.js/v1.2.0/bin/iojs 
$ nvm use 1.5.1 
Now using io.js v1.5.1 
$ nvm alias default iojs v1.5.1 
default -> iojs (-> iojs-v1.5.1) 
$ which iojs 
/Users/me/.nvm/versions/io.js/v1.5.1/bin/iojs 

Dann, nachdem eine neue Shell öffnen:

$ which iojs 
/Users/me/.nvm/versions/io.js/v1.2.0/bin/iojs 

kann meine alte bash installiert irgendwie durcheinander zu bringen? Ich bin auf OSX, aber ich denke, es macht keinen Unterschied.

--------- ------ bearbeiten Mehr Leistung wie gewünscht

➜ ~ nvm version 
iojs-v1.2.0 
➜ ~ ls $NVM_DIR/alias 
default 
➜ ~ cat $NVM_DIR/alias/default 
iojs 
➜ ~ nvm alias iojs 
iojs -> iojs-v1.5 (-> iojs-v1.5.1) (default) 
➜ ~ nvm alias $(cat $NVM_DIR/alias/default) 
iojs -> iojs-v1.5 (-> iojs-v1.5.1) (default) 

ich gerade herausgefunden, warum es zu 1.2.0 zurückkehrt ist, denke ich. Während der Installation von oh-my-zsh scheint es, den aktiven Pfad von meinem Bash-Shell genommen zu haben und kopiert es in die .zshrc Datei einschließlich der aktiven NVM Pfad zu der Zeit:

/Users/me/.nvm/versions/io.js/v1.2.0/bin 

Aber nach, dass das Entfernen von PATH Jetzt kann meine zsh nach dem Start einer neuen Shell keine Node-Binärdatei finden. Also immer noch die Frage ist ich quess, warum nicht die NVM-Einstellung erinnert? Ich kann es immer noch in der aktiven Shell setzen wie vorher, es klebt einfach nicht.

Ich denke jetzt, dass etwas grundlegend falsch mit meiner oh-my-zsh Installation sein könnte. Ich habe das Git-Plugin zum Beispiel in zshrc aktiviert, aber der Befehl "gst" ist kein gültiger Alias.

Plugins = (git, gitflow, NVM, brauen, tmux)

➜ ~ gst 
zsh: command not found: gst 
+1

„wenn ich gesetzt alias Standard zu einer anderen Version "Können Sie im Detail erklären, was das bedeutet? (Welchen Befehl haben Sie ausgeführt?) – 4ae1e1

+0

Ok Ich dachte, es war klar für NVM-Benutzer, aber ich habe die Befehle hinzugefügt –

+0

Bitte hängen Sie die Ausgabe von 'nvm-Version',' ls $ NVM_DIR/alias', 'cat $ NVM_DIR/alias/default ',' nvm alias iojs' und 'nvm alias $ (cat $ NVM_DIR/alias/default)' nach dem Öffnen einer neuen Shell. – 4ae1e1

Antwort

6

Ich habe es funktioniert jetzt. Oh-my-zsh neu installiert.

Ich bin mir nicht sicher, was sich geändert hat. Es scheint, dass ich das nvm-Plugin dafür aktiviert halten muss, damit es funktioniert.

Ohne das Plugin Ich habe versucht, den NVM-Startbefehl setzen in .zprofile

export NVM_DIR="/Users/me/.nvm" 
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm 

Obwohl die Datei auf die Schaffung einer neuen Shell geladen wird, es schien nicht NVM richtig zu aktivieren.

Auch ich habe festgestellt, dass, wenn ich einen Fehler in der ZSH-Plugin-Konfiguration in. Zshrc, gibt es keinen Fehler und die Plugins einfach nicht funktionieren. Das ist etwas vorsichtiges, denke ich.Zum Beispiel habe ich Kommas durch Zufall, und dann brechen die Plugins ohne Vorwarnung:

plugins=(git, gitflow, nvm) 
0

Dieser arbeitete für mich, wenn ich an die ~/.zprofile

export NVM_DIR=~/.nvm 
source $(brew --prefix nvm)/nvm.sh 
12

unten an das Ende von .zshrc

hinzugefügt
export NVM_DIR=~/.nvm 
source $(brew --prefix nvm)/nvm.sh 

Bitte beachten Sie, dass am Ende sein muss, ich weiß nicht, warum

+2

arbeitete für mich. Für ubuntu habe ich 'source ~/.nvm/nvm.sh' verwendet – notgiorgi

1

Ich benutze OSX 10.11.6 mit Hyper und Oh My Zsh. Ich musste nvm deinstallieren, das über homebrew installiert wurde, neu installieren es durch den Befehl curl, und fügen Sie diese Zeile dann ganz unten hinzu, damit es ordnungsgemäß funktioniert. Ich bin sicher, dass etwas mit all meinem plugins/Einstellung/blah, aber das ist, was es für mich gemacht Arbeit:

source "$NVM_DIR/nvm.sh" 

am Ende meines die ~/.zshrc Datei