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コマンドのへルプを見ると、スーパークラスの抽出とかもできるようだ。
_ nodeline()
IRCでなかださんに教えてもらった、parse.yにあるデバッグ用の関数。 これがあれば、今まで
(gdb) p ((unsigned int)(((((struct RNode*)(ruby_current_node)))->flags>>(11 +8))&(((long)1<<(sizeof(NODE*)*8 -(11 +8)))-1)))
としてたのが、
(gdb) call nodeline(ruby_current_node)
こんなにすっきり!
括弧が多いのはcppのせいだよ。Lisperじゃないよ。
2007-06-17 (Sun)
_ 奉仕作業
8時からという話だったのに7時前から草刈り機の音が聞こえ始めてあせる。 結局7時半まえくらいから参加。
草刈り機ははじめてだったのでちょっと面白かった。 が、靴底がはがれてしまってまいった。 みんな長靴だったので、今度からは僕もそうしよう。
2020-06-17 (Wed)
_ MAZDA3納車
試乗動画を見て一目惚れしてGW明けに契約していたMAZDA3が納車された。 10年以上乗ったエクシーガとはお別れ。
グレード選択は、MTの設定があるファストバックの15S TouringとX PROACTIVE Touring Selectionでかなり迷ったが、家族5人で遠距離を走るケースもたまにあるのと、未来への投資の意味も込めて世界で初めて圧縮着火ガソリンエンジンSKYACTIV-Xが搭載されたX PROACTIVE Touring Selection (MT/FF)にした。 15S Touring MTも試乗したけど、街乗りだと15Sの方が軽快で楽しいかもしれない。
SKYACTIV-Xの感想は、正直普通のガソリンエンジンとの違いがわからないけど、前向きに捉えるとそれくらい完成度が高いということなんだろう。 エンジンのカプセル化とボディの遮音のおかげで音はすごく静か。 一応慣らしの間は3000回転以上回さないようにしているけど、6000回転まで気持ちよく伸びるらしいので楽しみ。
_ まつもと [実際には「p nodeline(node)」ですね。callだと表示してくれないでしょう? っていうか、今までそんな..]