问题标签 [clap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
362 浏览

rust - 如何使 clap 的参数的 value_names 可选?

我正在尝试date从 coreutils 进行克隆。man描述了该命令可以-r具有不同的值“类型”:

所以这个论点可以描述为[-r seconds | filename]。我怎样才能在掌声中达到同样的效果?

我已经尝试过具有相同选项名称的多个参数。也有可能value_names在一个论点中有多个。但我没有发现任何关于您可以将名称设为可选的信息。

0 投票
1 回答
2109 浏览

rust - 正确解析 Clap ArgMatches 的惯用 rust 方法

我正在学习 rust 并尝试找到类似实用程序(是的另一个),我使用 clap 并尝试支持程序参数的命令行和配置文件(这与 clap yml 文件无关)。

我试图解析命令,如果没有命令传递给应用程序,我将尝试从配置文件加载它们。现在我不知道如何以惯用的方式做到这一点。

有一种惯用的方法可以将值提取OptionResult键入到相同的范围内,我的意思是我已经阅读、使用matchif let Some(x)使用x模式匹配范围内的值的所有示例,但我需要将值分配给变量。

有人可以帮我解决这个问题,或者指出我正确的方向吗?

最好的祝福

0 投票
2 回答
867 浏览

rust - 如何使用 structopt 将 possible_values 附加到结构?

clappossible_values允许您使用这样的方式提供接受值的列表。

如何做到这一点structopt

0 投票
2 回答
4141 浏览

rust - 如何使用 Clap 指定布尔命令行标志?

我想添加一个命令行标志。它是一个标志,所以它不需要参数,它要么存在要么不存在。我还需要知道如何读取标志,无论是 TRUE 还是 FALSE。

这是定义标志的代码:

我正在尝试读取这样的值:

None但是,当我打印它时会导致:

None即使我在命令行上指定标志也是如此。

0 投票
1 回答
201 浏览

rust - 有没有办法设置 Clap 或其他 arg 库以接受普通的“-”或“+”,以便我可以获得没有命名标志的参数组?

我希望能够仅使用以下格式的 - 和 + 字符来传递参数,以拍手或其他 arg lib。

然后在程序中我可以获得具有以下分组的向量...

这在 Clap 或其他 rust arg 库中是否可行?如果是这样,我该如何完成?

0 投票
0 回答
125 浏览

rust - 使用 Clap 获取自己的参数的 CLI 参数

我的程序采用几个文件名作为命令行参数,例如:

./myProgram -F file1 file2

这个简单的案例适用于 Clap,实际上它是Arg::multiple().

但是,我还希望每个文件都有自己的参数,这会改变该特定文件的行为。简化示例:

./myProgram -F --name file1 ---format csv --priority 2 -F --name file2 --priority 1

在这里,file1 具有更高的优先级,并且与 file2 的格式不同。

简单地使用 Arg::multiple() 不再有效,因为文件特定的参数(格式、优先级)被解析为独立的参数,无法知道它们属于哪个文件。

Arg::allow_hyphen_values() 似乎让我参与其中。但它只是将每次出现的 , 等解析--namefile1-F--format选项的值,无法知道哪个--priority参数属于哪个文件。我考虑过对文件特定的参数使用不同的语法并手动解析它们,但是由于这个限制,我什至不能这样做。

有没有办法用 Clap 做到这一点?

0 投票
1 回答
143 浏览

rust - 如何在 stuctopt 定义中访问运行时定义的变量?

我希望能够使用变量的值(或者更好的是 a 的返回function(arg))作为使用 structopt 定义的 CLI 程序的 about 字符串。最终目标是一个完全本地化的 CLI,它可以检测系统语言或 ENV var,并加载本地化的字符串,这些字符串会被烘焙到--help消息中,等等。

默认情况下,它使用文档注释:

我发现我可以传递手动输入的字符串:

这更近了一步,但我真正想做的是传递一个变量:

最后一个块是伪代码,因为我不知道使用什么语法来实现这一点。最后,我需要的不仅仅是一个字符串切片,但我认为这是一个开始的地方。

如何将这样的值传递给 structopt?我是否需要以某种方式访问​​底层的 clap 接口?

0 投票
0 回答
648 浏览

rust - StructOpt:如何在 clap::arg 属性方法中使用子命令枚举的字段?

我有以下设置:

在这种情况下,我想要一个条件,其中一个aisleshelf一起指定或isbn单独指定。我发现原始的 clap 方法required_unlessconflicts_with,以及它们的变体required_unless_allconflicts_with_all一起可以使用。

也许像这样使用它们:

但这会导致以下结果

这是正确的,因为通过的 pin 被用作isbn代替。

由于明显的原因,这不起作用。我认为我的问题的主要问题是如果放在子命令下,这些字段不能相互引用。我对当前的方法做错了吗?在这种情况下,是否有更好的替代 clap::arg 方法的方法?或者有没有办法在子命令之间进行通信?

0 投票
2 回答
1998 浏览

rust - 使用 clap 解析用户输入字符串以进行命令行编程

我想创建一个利用 clap 解析输入的命令行。我能想到的最好的方法是一个循环,它要求用户输入,用正则表达式分解它并构建一个 Vec 以某种方式传递给

基本上,我想知道是否有办法让 Clap 使用预先给定的参数列表?

0 投票
1 回答
491 浏览

rust - Rust Clap 自定义标题

我正在使用 rust Clap 库来解析命令行参数。显示帮助文本时,我想将必需参数与可选参数分开,并将它们放在单独的标题下。类似这样的东西:

这可能吗。

读完这个这个这个之后,我想可能是这样,但我对如何去做没有信心。

编辑:
所以评论员要求我用一些所需的输出更新帖子,所以下面是上面链接之一的示例。我希望能够有两个选项部分并命名它们。

因此将OPTIONS上面的部分更改为: