我只有一个可能的选项,它的解析如下:
def parse_options
options = {}
options[:markdown] = false
OptionParser.new do |opts|
opts.on('-md', '--markdown', 'Use Markdown Syntax') do
options[:markdown] = true
end
end.parse!
end如您所见,该选项不需要任何参数。更奇怪的是,我发现这是可行的:
command -md但这抛出了一个异常:
command --markdown
in `parse_options': missing argument: --markdown (OptionParser::MissingArgument)有什么想法吗?我读了文档和多个例子,但还是弄不明白。
发布于 2013-04-17 03:37:31
你不能像那样用两个字母的开关。使用
opts.on('-m', '--markdown', 'Use Markdown Syntax') do它工作得很好。请参阅OptionParser documentation下的Short style switch
https://stackoverflow.com/questions/16045150
复制相似问题