※追記 (2017/4/3)
neocompleteとrsenseはもう古い!
Neovim + deoplete + deoplete-rctを使いましょう。
※追記 (2016/3/27)
rsenseは開発が再開された模様 rsense/rsense
ただneocomplete-rsense.vimはgithubから削除されたのでこのままでは使用できない。
時間ができたら調べる予定。
※追記 (2015/9)
2010年頃から追記時点(2015/9)では開発が止まってる模様。
RSenseとvim neocompleteを連携させることによってpry並の補完が得られる。
(pry並は言い過ぎかもしれない)
補完だけでなく定義へのジャンプ機能なども備えている。
RSenseの詳細は公式サイトを参照
http://cx4a.org/software/rsense/index.ja.html
プラグインとその設定は以下の通り。
なおneocompleteの導入や設定などは各自で済ませてほしい。
" rsenseをインストール
" NeoBundle 'marcus/rsense' :helpが正常動作しない (執筆時点)
NeoBundle 'NigoroJr/rsense'
NeoBundleLazy 'supermomonga/neocomplete-rsense.vim', {
\ 'autoload' : { 'insert' : 1, 'filetype' : 'ruby', } }
" 補完の設定
if !exists('g:neocomplete#force_omni_input_patterns')
let g:neocomplete#force_omni_input_patterns = {}
endif
let g:neocomplete#force_omni_input_patterns.ruby = '[^.*\t]\.\w*\|\h\w*::'
let g:rsenseUseOmniFunc = 1
これで強力な補完が使えるようになる。
うまく型を認識できない事もあるが、今後改良されるはず。
ちなみにmarcus/rsenseとNigroJr/rsenseの違いはコメントにもある通り、:helpが正常に動作するかどうかという点。(執筆時点)