我的系统是Mac OS X 10.10,我使用 rvm 来管理rails,在emacs的shell中,我运行
bundle exec rake test
我收到了一个错误:
command not found: bundle
然后我安装了rvm.el,并在.emacs中启用,但错误仍然存在!
我该怎么办?
需要你的帮助!非常感谢你!
我发现iterm中的 $ PATH 与emacs的 $ PATH 不同。
我尝试在我的.emacs中添加 exec-path-from-shell ,但它仍无效!
(当(memq window-system'(mac ns))
(EXEC - 路径 - 从壳初始化))
ps:在iterm中,$ PATH是:
/Users/zwb/.rvm/gems/ruby-2.2.1/bin:/Users/zwb/.rvm/gems/ruby-2.2.1@global/bin:/Users/zwb/.rvm/rubies/ruby-2.2.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/zwb/.rvm/bin
在emacs的shell中,$ PATH是:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/zwb/.rvm/bin
在emacs中,$ PATH与iterm相同。
答案 0 :(得分:0)
Here是一种解决方案,可让我在emacs中运行M-x ! RET bundle exec rake test
。您必须在.emacs
:
(if (not (getenv "TERM_PROGRAM"))
(setenv "PATH"
(shell-command-to-string "source $HOME/.zshrc && printf $PATH")))
我希望它有所帮助。
答案 1 :(得分:0)
对我来说,Emacs 的 RVM 库解决了所有的问题: