Uniteを使ってriを検索できるvim-ref-riというプラグインを作った
どうも。Unite.vim無しでは生きられなくなりつつある僕です。
当然ながらドキュメントの検索もUnite + vim-refで行なっていて、最近perlに再入学*1したのでperldocを引きまくっています。超便利ですね!
で
僕はPerlと並行してRubyも書く用事があり、そちらも絶賛勉強中なのですが、ちょっとした問題にぶつかりました。
Perlにperldocが、PythonにpydocがあるようにRubyにもrdoc+riとrefeというものがある。
vim-refは標準でrefeを表示する機能があるので、僕もrefeをインストールして使っていたのだけど、調べた限りだとrefeは...
- 標準ライブラリしか対応していない
- 日本語(英語版を入れたらエラーでた)
という状態でした。特に前者が問題で、gemに記述されたrdocをrefeから引くことができない。
いちいちWeb上のドキュメントを読みに行ってもいいけど、できればVimから離れたくないし、かと言って今更新しくri用のプラグインを入れて操作方法を覚えるのもだるい。vim-ref用のriプラグインがあればいいんだけど、ググった限り誰も作っていなさそう。あーこれは自作するしかないか....。
できましたー
というわけで、ぱぱっと作ってみた。
使い方は簡単。vim-refとして検索するなら
:Ref ri NAME
Uniteインタフェースでインクリメンタルに検索したいなら
:Unite ref/ri
と実行する。メソッド名をクリックしたらそのページに飛ぶこともできる。
よろしければどうぞ
追記
riのバージョンによってオプションや出力のされ方がだいぶ異なるようで、もしかしたらお使いのriのバージョンでは正しく動作しない可能性があります。
とりあえず、僕の手元のver3.9.4のriでは動作を確認しています。
*1:大昔にはてなインターンで触ったことがある