我在一個應用程序中使用optparse-applicative庫,該應用程序在命令行上接受多個字符串並對每個字符串執行一個操作。我的第一次嘗試是這樣的:optparse-applicative:需要至少一個參數
arguments Just
(metavar "EXPR"
& help "Expressions to render, in zero-based De Bruijn index notation")
不幸的是,這使得與沒有參數運行的程序,即使它並沒有多大意義。
我的第二次嘗試參與單獨分析的第一個參數,然後將其consing到列表中的其餘部分:
(:) <$> argument Just (metavar "EXPR")
<*> arguments Just (metavar "EXPR")
這應該有工作,但事實並非如此:當--help
叫,解析器鯨吞它並且處理它而不是顯示幫助文本。
所以我的問題是:如何配置optparse至少需要一個參數?
fyi ...從版本0.9.0開始'arguments'和'arguments1'被棄用,贊成使用'many'和'some'組合參數''參數'。 – ErikR
感謝您的額外評論。 – drumfire
@ErikR但是帶參數的'some'在默認情況下不打印有用的幫助信息(即末尾沒有'...'):-( –