hellkite 日記と雑記とメモ。

Shiki Kazamaの駄文と音楽と、時々技術な感じ

gVimから呼び出されるRubyとbashから起動するRubyのバージョンが違う


スポンサーリンク


MacでゴキゲンなRuby環境を作ろうと思って色々と弄っているのですが、なかなかうまくいかず。今、悩んでいるのは、gVimから編集中のRubyプログラムを実行したときにエラーが出ること。
gVimから現在開いているRubyプログラムを実行させるには、以下のコマンドを打ち込む。

:!ruby %


ところが、前回*1スクリプトをこれを使って実行すると、require 'rubygems'でこけてしまう。なんでだろうと思って、

:!ruby -v

としてみると、ruby 1.8.2と出てくる。はて?古い?


ターミナルで、

ruby -v

としてみると、ruby 1.8.6と出てくる。
さらに、ターミナル上のvimで、

:!ruby -v

とすると、ruby 1.8.6。


1.8.2の方はMacに元々から入っていたバージョンで、1.8.6の方は、MacPortsでインストールしたバージョンだ。で、rubygemsMacPortsでインストールした方にしか入っていないため、Macに元々入っているRubyを認識しているgVimから実行するとrubygemsがないので怒るのだろう。
一応環境変数は、.bashrcだか、.profileに記述してあるのだが、それだけではGUIベースのアプリには無効なのだろうか?


ちょっと調べてみた。gVim上で、

:!echo $PATH

を実行すると、

/usr/bin
/bin
/usr/sbin
/sbin

と出てきたので、やはりパスが通っていないみたい。
どうやれば、gVim環境変数を渡せるんだ?



要調査。gVim上で動作が見れるかどうかによって開発効率はずいぶん変わるだろうし。