2011-07-09 13 views
12

Recientemente vi la luz y cambié a Zsh. Naturalmente, utilicé Oh My Zsh para configurarlo, ya que soy noobish. Entonces, hay varios temas que tienen un rvm-prompt incluido y aquí está donde empezaron mis problemas. Cada vez que cargo Zsh tengo que rvm reload o bien rvm-prompt no se resuelve (zsh: command not found: rvm-prompt). Tenga en cuenta que se resuelve bien después de volver a cargar. Además, y en línea, cuando voy a un directorio que tiene su propio .rvmrc (otro gemset) y luego salgo de él, ocurre el mismo problema; Me queda tener que volver a cargar Zsh. Tengo RVM en $PATH conjunto. TengoProblemas de Zsh y RVM (rvm-prompt no se resuelve)

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" 

en mi .zshrc

estoy usando el plugin RVM. ¿Alguien sabe qué pasa? No es realmente un show stopper, simplemente molesto.

Respuesta

4

No estoy seguro de que esto resuelva tus problemas, pero vale la pena intentarlo de todos modos.

Después de una actualización reciente de rvm, tuve problemas similares con oh-my-zsh. Desinstalé tanto rvm como oh-my-zsh y volví a instalar (primero instale oh-my-zsh, ya que copiará una ruta de grupo o rvm en su ~/.zshrc si instala primero rvm).

Las cosas funcionaron un poco mejor, excepto que rvm-prompt no funcionaría correctamente con una nueva ventana de terminal. Acabé pegue el siguiente código al final de mis ~/.zshrc y las cosas funcionan bien ahora:

rvm use default 

Creo que algunos hay algún tipo de problema de la gallina y el huevo con el orden de carga de RVM y oh-mi- zsh con versiones recientes de rvm. No estoy seguro de cuál es la culpa, ¡pero espero que se resuelva por uno o ambos!

+0

la mejor forma de hacerlo es mediante el movimiento de '.zshenv' según lo sugerido por @johnernaut – mpapis

1

Este problema se atiende en realidad en zsh-FAQ de rvm.

http://beginrescueend.com/integration/zsh/

añadiendo __rvm_project_rvmrc a su .zshrc resuelve el problema.

Estoy agregando esto como una respuesta porque acabo de encontrar esto mientras buscaba en Google el problema y la solución anterior simplemente establece la versión de ruby ​​en el valor predeterminado de rvm y no funciona con los conjuntos de valores.

+3

Esto no funciona para mí. Usar el '.zshenv' como lo hace la respuesta anterior. – nmott

+1

Tampoco funcionó para mí – raviolicode

19

Tuve el mismo problema hasta que puse [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" en un archivo .zshenv en vez del archivo .zshrc.

+1

Esto me llevó a ver en la parte rvm de mi mensaje a pesar de que 'rvm current' informó lo contrario. Una mejor solución es usar un alias, como describo a continuación. – jasongarber

18

Crea un alias para rvm-prompt. Esa es la respuesta más segura. Arreglar las cosas en su archivo .zshrc en este orden:

  1. alias rvm-prompt=$HOME/.rvm/bin/rvm-prompt
  2. source $ZSH/oh-my-zsh.sh
  3. [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

Si oh-my-zsh (ZMO) cargas antes de RVM, which rvm-prompt error de forma silenciosa, por lo que no verá RVM en su solicitud (si es compatible con su tema) aunque esté más adelante en su ruta, después de que se cargue RVM.

Si RVM se carga antes que OMZ, puede obtener un zsh: command not found: rvm-prompt.

Aliasing su rvm-prompt a su ubicación real parece resolver el problema, independientemente de en qué orden se carguen RVM y OMZ. Todavía recomendaría RVM en la parte inferior.

Poner la carga RVM en .zshenv como se sugirió anteriormente cargaría RVM dos veces en iTerm 2 (y no, no estaba todavía en mi .zshrc) y resultaría en el símbolo que muestra "sistema" a pesar de que rvm-prompt y rvm current mostraron una específica versión ruby ​​y gemset.

+1

Buena captura, jasongarber. Parece que el último rvm intenta agregar ~/.rvm/bin a la ruta para hacer esto, pero le sucede tarde. En cuanto a su pista, moví el origen hacia la parte inferior del archivo. https://gist.github.com/1973583 –

+0

¡Muy bien, atrápate! Tu manera funciona muy bien sin el alias. – jasongarber

+0

Este me funcionó bien. ¡Gracias! – kgpdeveloper

1

La forma más sencilla de deshacerse de él es la instalación de RVM (Rubí virtual Gerente). Entonces, realmente apreciarás el tema.

curl -sSL https://get.rvm.io | bash 

El problema se resuelve después de eso ..

Cuestiones relacionadas