3

我正在使用 RVM (1.17.7) 和 Ruby 1.9.3p362。从长远来看,我想用 Tmux 转移到终端中的 Vim。我正在尝试学习如何使用我选择的插件来安装和运行,而不是默认使用 Janus,只是想学习这一切,而不是成为一名狂热的程序员。

当Ruby设置为1.9.3时,我对Command-T的Vim git clone进行了brew安装(我正在使用Pathogen)......并且使用Vim和Command-T在终端中一切都很好。当我运行 :ruby 将 RUBY_VERSION 放入终端 Vim 时,它会返回 1.9.3。Command-T 也可以正常工作。

当我尝试在 MacVim 中使用相同的 Command-T 时,它会崩溃并且终端显示:Vim: Caught deadly signal SEGV Vim: Finished。

我在 1.9.3 中执行了 brew install macvim,但是当我从终端启动 mvim 并运行 :ruby puts RUBY_VERSION 时,我回到了 1.8.7。我知道 Wincent 推荐使用 Ruby 的系统版本来安装 Command-T,而且我读过您必须以任何一种方式匹配 Ruby 版本。当我拥有系统 ruby​​ 时,我已经设法让它为两者都工作,但在 1.9.3 的 RVM 版本上无法同时获得它......这可能吗?我应该忘记 MacVim 并在终端中坚持使用 Vim 吗?

我认为我可以做的其他事情是创建一个禁用的文件夹,然后将不同的 Command-T 安装移入和移出它。或者也许为 'gui_running' 做一个 if 并针对不同的安装。任何让我直截了当的建议都会很棒。

我已经安装了 Tim Pope 的 rvm.vim 并且可以设置 Ruby 版本,但是当我调用 :CommandT 时,这似乎并没有阻止 MacVim 中的崩溃。

4

1 回答 1

4

我猜您在安装macvim之前安装了软件包,然后安装了所有其余部分,然后安装了vim软件包。这就解释了为什么它在终端模式下工作。这是两个不同的包,它们有自己的构建选项。

跑:

vim --version

并将输出与以下内容进行比较:

mvim --version

特别是,检查最后一行(以 开头Linking:)。您可能会看到ruby-1.8linked in formvimruby-1.9.1linked in for vim(注意1.9.3 报告1.9.1;它是C API 版本,而不是Ruby 版本)。

如果这一切都是真的,请通过以下方式修复它:

brew uninstall macvim
brew install macvim

它应该针对您的 1.9.3 配置构建。在执行此操作之前,请确保rvm current报告 1.9.3。

于 2013-03-26T04:22:50.400 回答