Вот моя текущая настройка:Как я могу использовать правильную версию Ruby Ruby с командной оболочкой Emacs?
- MacBook с Mountain Lion
- Emacs является http://emacsformacosx.com/
- rbenv с глобальными 1.9.3-P374
- Войти оболочки ЗШ
Мои ~ /.zprofile (я уверен, что файл будет выполнен):
# Customize to your needs...
export PATH=/Users/username/.rbenv/shims:/Users/username/.nvm/v0.9.8/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin
eval "$(rbenv init -)"
Я хочу использовать мою глобальную версию рубина с M-x shell-command
(или M-!
). Я ожидаю, что M-! ruby -v
вернется ruby 1.9.3p374 (2013-01-15 revision 38858) [x86_64-darwin12.3.0]
, но я получаю ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
.
Если я запустил ruby -v
в M-x shell
, загрузили нужную версию. Я подозреваю, что M-!
не работает должным образом, поскольку он работает как неинтерактивная оболочка.
Есть ли способ исправить это, помимо запуска чего-то вроде: M-! eval "$(rbenv init -)" && ruby -v
? Это работает, но я не хочу вставлять eval "$(rbenv init -)" &&
infront всего, что я выполняю.