使用boost program_options和自动完成

时间:2015-06-02 09:41:21

标签: c++ bash boost autocomplete

我正在使用boost :: program_options进行命令行应用程序。

它已经通过program_options的异常处理通知用户有关诸如模糊参数之类的事情:

Error occured when parsing arguments: option '--foo' is ambiguous and 
matches 'foo_do', and 'foo_bar'

如果参数的子字符串不明确,它也会使用它来识别匹配的命令(即,如果我输入" foo_b",它将完成" foo_bar")

有没有简单的方法可以利用这个已有的简单命令行自动完成知识?

是否有关于如何将有关命令行参数的静态信息传递给bash的自动完成以及program_options的经验?

提前致谢。

1 个答案:

答案 0 :(得分:0)

是的,你可以利用它,但你必须自己写。依靠通常在自动完成脚本中使用的“标准”机制可能更容易。

我认为bash_completion具有足够的智能,它会给DoTheRightThing提供一个长选项名称的简单列表。