在vim/macvim中更改$PATH以查找正确的ruby二进制文件

3
在尝试协调ZSH会话和shell的vim/macvim访问之间的环境时,从shell中的which ruby显示$HOME/.rvm/rubies/ruby-1.9.3/bin/ruby,这是好的,而从vim/macvim内部的!which ruby显示/opt/local/bin/ruby,这是不好的。
我以为将.zshrc中RVM的调用复制到.zshenv中会起作用,但这样做会干扰其他实用程序。经过几天的努力,我感到困惑。如果有任何解决此问题的文档,将不胜感激。

1
我很好奇,在将rvm添加到您的.zshenv时,哪些实用程序会受到干扰。 rvm网站的文档建议使用.zshenv应该可以解决这个问题https://rvm.io/integration/vim/。 - mmrobins
3个回答

4

我不知道这是否适用于zsh,但根据它的启动方式,bash会读取一些文件而不是其他文件。在我的~/.vimrc中添加此行确保$PATH在Vim和shell中相同。

set shell=bash\ -i

但这取决于您如何开始/自定义您的shell。
请参阅:help 'shell'和zsh手册。

0

-1
也许你可以在vimrc中加入:$PATH=$HOME.'/.rvm/rubies/ruby-1.9.3/bin/ruby:'.$PATH。这可能有点hacky,但或许它会起作用。

也许可以。不过,如果我能够完全将shell环境导入到vim/macvim会话中,就会更加清洁。 - xuinkrbin.
刚试了一下,不行。当我尝试源化 .vimrc 时,我收到了以下错误信息: E15: Invalid expression: .rvm/rubies/ruby-1.9.3/bin/ruby:$PATH E15: Invalid expression: $HOME/.rvm/rubies/ruby-1.9.3/bin/ruby:$PATH - xuinkrbin.
1
@xuinkrbin; @synic 语法无效,你应该使用let $PATH=$HOME.'/.rvm/rubies/ruby-1.9.3/bin/ruby:'.$PATH - ZyX

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接