2016-07-22 2 views

Antwort

0

Ich denke, der einfachste Weg wäre, die versteckte Option vor dem Aufruf von parse! auf dem Optionsparser separat zu parsen.

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

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

Obwohl das bedeutet, dass Sie die verdeckte Option Parsing manuell behandeln müssen. Alternativ können Sie für die versteckten Optionen eine separate OptionParser definieren und OptionParser::InvalidOption bei der Analyse retten und dann mit dem normalen Parser analysieren. Aber das wäre empfindlich für die Reihenfolge, in der Optionen angegeben werden.