ruby/tool/rdoc-srcdir

28 строки
741 B
Ruby
Executable File

#!ruby -W0
$:.unshift(File.expand_path("../lib", __dir__))
require 'rdoc/rdoc'
# Make only the output directory relative to the invoked directory.
invoked = Dir.pwd
# Load options and parse files from srcdir.
Dir.chdir(File.dirname(__dir__))
options = RDoc::Options.load_options
options.title = options.title.sub(/Ruby \K.*version/) {
File.read("include/ruby/version.h")
.scan(/^ *# *define +RUBY_API_VERSION_(MAJOR|MINOR) +(\d+)/)
.sort # "MAJOR" < "MINOR", fortunately
.to_h.values.join(".")
}
options.parse ARGV
options.singleton_class.define_method(:finish) do
super()
@op_dir = File.expand_path(@op_dir, invoked)
end
# Do not hide errors when generating documents of Ruby itself.
RDoc::RDoc.new.document options