vimのrubyオプションを有効にする。

$ vim --version | grep ruby
 -python3 +quickfix +reltime -rightleft -ruby +scrollbind +signs +smartindent

オプションの確認。
 -rubyなので現在は無効。
Homebrew の Vim formula 書いた
から
https://gist.github.com/721952
を利用してbrewvimをインストール。

$ brew install https://gist.github.com/raw/721952/7e09331daa87184b21f97062a1468fd5ed8a07d2/vim.rb --enable-interp=ruby --force --HEAD
Error: You must install Mercurial: brew install mercurial

 --HEADオプションを付けたせいかバージョン管理ツールのmercurial入れてねって言われたので入れる。

brew install mercurial

再度トライで完了。
それだけだとvimで起動するのは元々入っていたvimになるので、変更。
~/.bash_profileを編集

export PATH=/usr/local/bin:$PATH

vim --version | grep ruby
 -python3 +quickfix +reltime -rightleft +ruby +scrollbind +signs +smartindent
Linking: /usr/bin/clang -L. -L/Users/****.rbenv/versions/1.9.3-p194/lib -L/usr/local/lib -o vim -lm -lncurses -liconv -framework Cocoa -lruby-static -lobjc -L/Users/****/.rbenv/versions/1.9.3-p194/lib

できた!
は良いんだけど、使い方全然分かんない…。途方に暮れそうになるがまぁ慣れるしかない。

vim-rubyの導入

gem install vim-ruby出来なかったのでgithub vim-ruby / vim-rubyからファイルをダウンロードして、bin/vim-ruby-install.rbを実行してインストール。

$ ruby vim-ruby-install.rb
vim-ruby-install.rb:15: Use RbConfig instead of obsolete and deprecated Config.

Possible Vim installation directories:
1) /Users/****/.vim
2) /usr/local/Cellar/vim/HEAD/share/vim/vimfiles

Please select one (or anything else to specify another directory):
Please enter the full path to your Vim installation directory: /usr/local/Cellar/vim/HEAD/share/vim/vim73

ディレクトリがvim73になってるのでそれに変更してインストール。
.vimrcがまだなかったので、生成。

$vim .vimrc
#以下を記入
set nocompatible
syntax on
filetype on
filetype indent on
filetype plugin on
compiler ruby
let ruby_space_errors=1 #余分なスペースがあるとハイライトしてくれるオプション

試しに以前書いたrubyのコードを読み込むと、ちゃんとシンタックスハイライトされて表示された!
追記:gemのインストールちゃんと出来てなかった。git使ったほうが確実。

$ git clone http://github.com/vim-ruby/vim-ruby.git
$ cd vim-ruby
$ rake package
$ gem install etc/package/vim-ruby-{yyyy.MM.dd}.gem #ファイル名は適宜変更

で上の手順を踏む。

入力の補完とか

機能的には入力途中のコードを保管してくれる機能も付いているんだけど、Ctrl+x Ctrl+oを実行すると毎回落ちる。

Vim: Caught deadly signal SEGV
Vim: preserving files...
Vim: Finished.
Segmentation fault: 11

原因として考えられるのは使用しているrubyのバージョンとvim内で利用するバージョンが違うと起きるという事なので、rbenvで管理してるのが原因臭い。が、解決索を探るのに時間がかかりそうで仕事にならないので、一先ず放置することにする。時間ができたら修正したい。
参考:vim caught deadly signal SEGV