From: OHBAYASHI Ippei Date: 2004-02-01T04:41:01+09:00 Subject: [ruby-list:39099] RRB こんにちは、大林です。 我々KMC(京大マイコンクラブ)は現在開発しているRRB(仮) - Ruby Refactoring Browser - を公開しました。 RRBはemacs上で動くRuby用リファクタリングブラウザで、KMC内で開発が進められてきま した。まだまだ不完全な部分が多々ありますが、とりあえず公開できる水準に達したと判断 し公開します。 今回の公開版は、いわゆるアルファ版であり、インストーラ、ユーザ用ドキュメント等 の整備は一切していません。 Linux, ruby 1.6.7/1.8.1, emacs 21.3/20.7.2での動作を確認しています。 ライセンスはRuby'sで、http://www.kmc.gr.jp/proj/rrb/ より取得できます。 現状では、以下のリファクタリングができます。 * Rename local/global/instance/class variable * Rename method * Rename constant * Pull up/Push down method * Extract method そして以下のような制限があります。 * リファクタリングの対象となるスクリプトはemacsに読みこまれている「.rb」という 名前のものに限られる * スクリプトの実行部はすべて if __FILE__ == $0 then ... end で囲まれていなけれ ばならない * どの順番でファイルをrequireしても正しくクラスが定義されるようにしなけれれば ならない 一つ目の制限はリファクタリングの対象となるスクリプトを自動判別するのは難しい ため、二つ目、三つ目の制限は対象のスクリプトにおけるクラス階層を調べるために リフレクションを利用しているために生じています。 また、現状では attr_* によって作られるアクセッサは一切考慮していません。 その他解析、判定が不十分なところがたくさんあります。 さらに詳しいことは上で挙げたページやアーカイブ内のドキュメント、ソース等を 参照してください。 興味を持たれた方はいろいろいじってみてください。 それでは。 -- 大林一平 ohai@kmc.gr.jp http://www.kmc.gr.jp/~ohai/