替换rdoc使用

时间:2009-05-11 06:17:31

标签: ruby ruby-1.9 rdoc

根据this post,RDoc :: usage目前在ruby 1.9中不可用。有没有好的替代品?

我很想知道标准安装中可用的内容以及宝石提供的内容。

3 个答案:

答案 0 :(得分:4)

我喜欢OptionParser(文章提到RDoc::usage对补充有用)。

它看起来像任何1.9个错误have been patched

答案 1 :(得分:2)

feature request 2713中,rdoc维护者声明他不会将rdoc / usage或任何类似的功能添加回rdoc,并说应该使用OptionParser。

答案 2 :(得分:1)

我们对所有新脚本使用OptionParser,但大约有100多个使用过RDoc。我没有重写每一个,而是编写了这个方法(BB是我们公司的命名空间。将其改为你喜欢的任何东西)。它很棒。语法略有不同,但是它的帮助文字让我们不介意。希望它有所帮助!

然后我使用sed查找所有脚本并进行更改。

grep -rl "RDoc::usage" * | xargs sed -i "/rdoc\/usage/ s/RDoc/BB/"
grep -rl "BB::usage" * | xargs sed -i "/rdoc\/usage/ s/rdoc/lib\/bb/"

-

module BB
    def BB::usage( exit_code )

        File::open( $0, 'r').readlines.each_with_index do | line, idx |
            next if idx == 0
            if( line =~ /^#/ )
                puts line.gsub(/^#\ ?/,'')
            else
                puts #RDoc adds extra line so we do too
                exit( exit_code )
            end
        end
    end
end