同一个命令行参数是否可以有多个长名称?

问题描述 投票:0回答:1

让我们用一个程序参数的例子来说明我的意思:

-q, --quiet, --silent: Don't show output

我尝试过做

#[derive(Parser)]
#[command(version = "0.1.0")]
struct Args {
  // ...
  #[arg(short, long = ["quiet", "silent"], default_value_t = false)]
  quiet: bool,
}

但是 rust 给了我一个错误,因为

long
参数采用字符串,而不是数组,但是有没有一种解决方法,使用 clap 为同一参数提供多个可能的名称?

rust command-line-interface clap
1个回答
0
投票

我需要使用

alias
参数到
arg
(或者
visible_alias
,如果我希望它显示在帮助消息上)

#[arg(short, long, visible_alias = "silent")]
quiet: bool,
© www.soinside.com 2019 - 2024. All rights reserved.