2

http://ruby-doc.org/stdlib-2.1.5/libdoc/optparse/rdoc/OptionParser.htmlの OptionParser の「最小限の例」:

require 'optparse'

options = {}
OptionParser.new do |opts|
  opts.banner = "Usage: example.rb [options]"

  opts.on("-v", "--[no-]verbose", "Run verbosely") do |v|
    options[:verbose] = v
  end
end.parse!

p options
p ARGV

主な質問:

  • そこには具体的にどのような内容が含まれているのoptsでしょうか。それは新しい OptionParser インスタンスですか、それともスクリプトに渡された/-\w/orに見えるものすべてですか? /--\w+/当然のことながら、そのdoブロックはループですか?
  • 何をしparse!ますか?doなぜブロック全体で呼び出されるのですか?

また疑問に思う:

  • 方法は何OptionParser#bannerですか?そのテキストはどのような文脈で表示されますか?
  • この例で OptionParser に渡された 3 番目のパラメーターは、どのようなコンテキストで表示されますか? フラグの効果についての説明はほとんどありません。
  • スクリプトが不明なオプションで実行された場合、どのようにカスタム エラー メッセージを作成できますか?
4

1 に答える 1