Una cosa que RVM puede hacer es notar cuando ha cambiado directorios, busque un .rvmrc
, y cambie su versión actual de Ruby y su gemset de acuerdo con el contenido de ese archivo. Hace este cambio tan pronto como cambias a ese directorio y emite un mensaje en consecuencia.¿Cómo detecta RVM cuando ha cambiado directorios?
¿Cómo detecta un cambio en el directorio de trabajo actual? Puedo imaginar una manera extremadamente cruda de hacer esto: ejecutar un daemon que se ejecuta como el usuario actual y sigue revisando los resultados de pwd
. Pero estoy seguro de que eso no es lo que hace.
Otro enfoque podría ser alias cd
para cambiar los directorios, pero también para comprobar .rvmrc
y cambiar las gemas si así se indica.
¿Hay un gancho de sistema Unix para cambiar directorios, o hay algún otro truco que esté utilizando RVM?
Dado que pwd es por proceso, no por usuario, no creo que el daemon funcione. –
@TomAnderson Absolutamente correcto. Estaba confundido acerca del concepto. :) –
Por cierto, ahora estoy usando chruby, y he [personalizado su comportamiento de monitoreo de directorios para adaptarme a mi uso en zsh] (http://nathanmlong.com/2015/01/optimizing-chruby-for-zsh/) –