use clap::{Arg, ArgGroup, Command}; fn main() { let matches = Command::new("hello") .arg(Arg::new("a").short('a').group("abc_group")) .arg(Arg::new("b").short('b').group("abc_group")) .arg(Arg::new("c").short('c').group("abc_group")) .arg(Arg::new("need...
1.3.3 Command::next_line_help 使用Command::next_line_help 方法 可以修改参数打印行为 use clap::{arg, command, ArgAction}; fn main() { let matches = command!() // requires `cargo` feature .next_line_help(true) .arg(arg!(--two <VALUE>).required(true).action(ArgAction::Set)) .arg...
在前端开发中我们一般使用import/require进行第三方库的引入,而在Rust中我们使用use来导入第三方库clap中的Parser trait。也就是说,通过use xx我们就可以使用clap中的特定功能。也就是把对应的功能引入到该作用域内。 定义了一个结构体,它使用 clap::Parser 的 derive 宏和command宏,并且只接受一个参数,即 name。
您需要引入一个ArgGroup。要使用派生宏来实现这一点,请创建一个结构体Group并将其存储在MyCommand中,...
[command(author, version, about, long_about = None)] struct Clis { /// Optional name to operate on name: Option, /// Sets a custom config file #[arg(short, long, value_name = "FILE")] config: Option, /// Turn debugging information on #[arg(short, long, action = clap::Arg...
CommandLinkGroup:表示命令链接组。 CommandLink:表示命令链接。 ExternalDocsPair:表示外部文档对。 OpenCargoTomlParams:表示打开Cargo.toml的请求参数。 CodeLensResolveData:表示代码镜像解析数据。 MoveItemParams:表示移动项的请求参数。 WorkspaceSymbolParams:表示搜索工作区符号的请求参数。
## 1. 1 添加依赖 ``` [dependencies] clap = { version = "4.2.7", features = ["derive","cargo"] } features = "0.10.0" cargo = "0.70.1" 或者 cargo add clap -- features cargo 需要注意:如果不启用 cargo feature ,则会报如下错误。 requires `cargo` feature ``` 如果使用`command!`...
clap中的用法文本有一个子命令部分,因此只有一个标题。它显示了所有可用的子命令。你可以用subcommand_...
您需要引入一个ArgGroup。要使用派生宏来实现这一点,请创建一个结构体Group并将其存储在MyCommand中,...
写web项目或者app等,必不可少的要接受参数和校验参数的准确性,基本也是项目开始的第一步,那么我们今天来看下rust提供了哪些优秀的crates