2005-06-17 (Fri)
_ [ソフトウェア] VIMでRuby Refactoring Browserを使う
~/.vim/plugin/rrb.vimに以下のような内容を書いておく。
command -nargs=1 -range RubyExtractMethod :call s:RubyExtractMethod(expand("<args>"), <line1>, <line2>)
function s:RubyExtractMethod(methodName, line1, line2)
let path = expand("%")
let out = system("rrb --extract-method " . path . " " . a:methodName . " " . a:line1 . " " . a:line2 . " --filein-overwrite " . path)
if strlen(out) == 0
edit
else
echo out
endif
endfunction
で「:'a,. RubyExtractMethod foo」のように実行すると、 選択範囲がちゃんとfooというメソッドになる。 けっこうよさげ。
rrbコマンドのへルプを見ると、スーパークラスの抽出とかもできるようだ。
[TrackBack URL: http://shugo.net/jit/tb.rb/20050617]
本日のリンク元
- http://d.hatena.ne.jp/dann/20050808/p6 ×57
- http://d.hatena.ne.jp/dann/20050808 ×10
- http://d.hatena.ne.jp/dann/ ×6
- http://sbs.mobile.yahoo.co.jp/union/search?p=ところてん... ×5
- http://r.hatena.ne.jp/rhosoi/Nerds/ ×5
- http://search.live.com/results.aspx?q=hatena&mrt=e... ×3
- http://mixi.jp/view_diary.pl?url=http://shugo.net/... ×3
- http://sagool.jp/s?q=ところてん&x=67&y=6 ×3
- http://mixi.jp/view_diary.pl?url=http://shugo.net/... ×2
- http://b.hatena.ne.jp/u-ichi/ ×2
- http://babelfish.altavista.com/babelfish/trurl_pag... ×2
- http://search.live.com/results.aspx?q=hatena&form=... ×2
- http://babelfish.altavista.com/babelfish/trurl_loa... ×2
- http://b.hatena.ne.jp/Pink/vim/ ×2
- http://ocn.amikai.com/AmiWeb?ami_url=http://shugo.... ×2
- http://capsctrl.que.jp/kdmsnr/wiki/bliki/?DebianJa... ×1
- http://b.hatena.ne.jp/Pink/vim/?mode=detail ×1
- http://k2works.sub.jp/umai/ ×1
- http://reader.labs.goo.ne.jp/html/f22.html?1119149... ×1
- http://sbs.mobile.yahoo.co.jp/p/sbs/union/search?p... ×1
- http://sbs.mobile.yahoo.co.jp/union/search?fr=m_to... ×1
- http://sagool.jp/s?q=vim browser ×1
- http://inside/~yhara/ ×1
- http://sagool.jp/s?nj=&q=ところてん ×1
- http://b.hatena.ne.jp/miyamuko/Ruby/ ×1
- http://sbs.mobile.yahoo.co.jp/union/search ×1
- http://b.hatena.ne.jp/dann/vim/ ×1
- http://www.rubyist.net/~matz/20070112.html ×1
- http://technorati.com/tags/ruby ×1
- http://itoshi.tv/d/?date=20050426 ×1
- http://sagool.jp/s?q=ところてん ×1
- http://search.live.com/results.aspx?q=ruby.vim&src... ×1
- http://sagool.jp/s?nj=&q=ところてん&x=28&y=9 ×1
- http://b.hatena.ne.jp/t/vim ×1
- http://dont.refer.my.referer ×1
- http://mixi.jp/view_diary.pl?url=http://shugo.net/... ×1
- http://sbs.mobile.yahoo.co.jp/union/search?p=Flags... ×1
- http://search.live.com/results.aspx?q=hatena ×1
- http://okra.ark-web.jp/~konuma/cgi-bin/search.cgi?... ×1
- http://b.hatena.ne.jp/add?mode=confirm&is_bm=1&tit... ×1
- http://b.hatena.ne.jp/add?mode=confirm&title=Journ... ×1
- http://b.hatena.ne.jp/mzp/リファクタリング/ ×1
- http://mixi.jp/view_diary.pl?url=http://shugo.net/... ×1
- http://sbs.mobile.yahoo.co.jp/union/search?p=無理Fla... ×1
- http://b.hatena.ne.jp/add?mode=confirm&title= [%u3... ×1
- http://b.hatena.ne.jp/mzp/ ×1
- http://pink.s13.xrea.com/20051109.html ×1
- http://sbs.mobile.yahoo.co.jp/p/sbs/mobilesite/sea... ×1
- http://b.hatena.ne.jp/mzp/?of=20 ×1
- http://b.hatena.ne.jp/add?mode=confirm&title=Journ... ×1

実際には「p nodeline(node)」ですね。callだと表示してくれないでしょう?
っていうか、今までそんなカッコほんとに使ってたんですかぁ。