2010年3月27日土曜日

RSenseをneocomplcacheで使用するには?

m2ymさんが作成したRSenseは、まだ未完成ですが優れた型推論機能で便利です。
しかし、Vimには一応対応しているもののcompletefuncを書き換えてしまうため、
neocomplcacheと併用すると問題が発生します。
私がneocomplcacheと相性が良くなるように書き換えたので、
etc/rsense.vimを置き換えてください。
http://github.com/Shougo/rsense

追記:Ver.0.3で私のパッチが取り込まれ、neocomplcacheに対応しました!

その上で、次のような設定をすれば一応動作します。
g:rsenseHomeはRSenseをインストールしたディレクトリを指定してください。
let g:rsenseHome = 'c:/rsense-0.3'
let g:rsenseUseOmniFunc = 1

if !exists('g:neocomplcache_omni_patterns')
let g:neocomplcache_omni_patterns = {}
endif
let g:neocomplcache_omni_patterns.ruby = '[^. *\t]\.\w*\|\h\w*::'

使用例はこのようになります。RSenseサーバーの応答速度が遅いので、
補完は若干もたつきます。注意してください。