这是我当前的设置:
- 带有山狮的 MacBook
- Emacs 是http://emacsformacosx.com/
- 具有全局 1.9.3-p374 的 rbenv
- 登录shell是zsh
我的 ~/.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 -)"
我想将我的全局定义的 ruby 版本与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-!
它不能按预期工作,因为它作为非交互式 shell 运行。
有没有办法解决这个问题,除了运行类似的东西:M-! eval "$(rbenv init -)" && ruby -v
?这可行,但我不想在eval "$(rbenv init -)" &&
我执行的所有内容之前插入。