1

それを知っているユーザーだけがそれを追加でき、オプションリストに表示されないオプションをoptionParserに追加する方法はありますか?

ありがとう!

4

1 に答える 1

1

parse!オプションパーサーを呼び出す前に、隠しオプションを個別に解析するのが最も簡単な方法だと思います。

if ARGV.delete '--secret'
  ...
end

OptionParser.new do |opts|
  ...
end.parse!

ただし、非表示オプションの解析を手動で処理する必要があります。OptionParserまたは、非表示のオプションを個別に定義し、解析時にレスキューOptionParser::InvalidOptionしてから、通常のパーサーで解析することもできます。しかし、それはオプションが指定された順序に敏感です。

于 2016-07-22T15:27:19.583 に答える