diff options
Diffstat (limited to 'lib/rdoc/options.rb')
-rw-r--r-- | lib/rdoc/options.rb | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/rdoc/options.rb b/lib/rdoc/options.rb index f67241bc03..45b69186f9 100644 --- a/lib/rdoc/options.rb +++ b/lib/rdoc/options.rb @@ -350,13 +350,14 @@ Usage: #{opt.program_name} [options] [names...] end argv.insert(0, *ENV['RDOCOPT'].split) if ENV['RDOCOPT'] + ignored = [] begin opts.parse! argv rescue OptionParser::InvalidArgument, OptionParser::InvalidOption => e - if ignore_invalid and not quiet then - $stderr.puts e - $stderr.puts '(invalid options are ignored)' + if ignore_invalid then + ignored << e.args.join(' ') + retry else $stderr.puts opts $stderr.puts @@ -365,6 +366,11 @@ Usage: #{opt.program_name} [options] [names...] end end + if ignored and not quiet then + $stderr.puts "invalid options: #{ignored.join ', '}" + $stderr.puts '(invalid options are ignored)' + end + @op_dir ||= 'doc' @files = argv.dup |