2011-04-02 10 views
8

Usando RVM en eshell de emacs, no puedo configurar la versión de ruby. ¿Por qué? Medio Ambiente: Ubuntu 9,10Usando RVM en eshell de Emacs

/media/Work/rubyworkspace $ ruby -v 
ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] 
/media/Work/rubyworkspace $ rvm use 1.9.2 
Using /usr/local/rvm/gems/ruby-1.9.2-p180 
/media/Work/rubyworkspace $ ruby -v 
ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux] 

Respuesta

13

Por lo que yo puedo decir, RVM se basa en la cáscara de ser una cáscara "regular" UNIX. La selección del intérprete correcto, etc. se realiza utilizando variables de shell y estas no se aplican a eshell que tiene su propia forma de configurar cosas.

Una solución es utilizar M - Xterm y luego usar un shell normal dentro de esa. La otra es dar una oportunidad al rvm.el. Yo personalmente tampoco lo he intentado.

+2

1 de rvm.el. Lo uso todo el tiempo para cambiar entre mis proyectos privados (1.9.2) y trabajo (1.8.7). –

+1

rvm.el trabajado. Gracias. – kgthegreat

+0

De nada. :) –

-2

También puede escribir

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

a su Bashrc

buena suerte

+1

Esto no se aplica a eshell –

+0

Por extraño que parezca, esta solución funcionó para mí. – yuvilio

+0

Esto funcionará con el shell M-x (es decir, una invocación de shell predeterminada). Sin embargo, falla con eshell (shell de Emacs). – Anupam