mirror of
https://github.com/clap-rs/clap
synced 2024-12-14 23:02:31 +00:00
83d6add9aa
In surveying various tools and CLI parsers, I noticed they list the subcommands first. This puts an emphasis on them which makes sense because that is most likely what an end user is supposed to pass in next. Listing them last aligns with the usage order but it probably doesn't outweigh the value of getting a user moving forward.
1.3 KiB
1.3 KiB
$ 03_04_subcommands help
clap [..]
A simple to use, efficient, and full-featured Command Line Argument Parser
Usage:
03_04_subcommands[EXE] <SUBCOMMAND>
Subcommands:
add Adds files to myapp
help Print this message or the help of the given subcommand(s)
Options:
-h, --help Print help information
-V, --version Print version information
$ 03_04_subcommands help add
clap-add [..]
Adds files to myapp
Usage:
03_04_subcommands[EXE] add [NAME]
Arguments:
<NAME>
Options:
-h, --help Print help information
-V, --version Print version information
$ 03_04_subcommands add bob
'myapp add' was used, name is: Some("bob")
Because we set [Command::arg_required_else_help
][crate::Command::arg_required_else_help]:
$ 03_04_subcommands
? failed
clap [..]
A simple to use, efficient, and full-featured Command Line Argument Parser
Usage:
03_04_subcommands[EXE] <SUBCOMMAND>
Subcommands:
add Adds files to myapp
help Print this message or the help of the given subcommand(s)
Options:
-h, --help Print help information
-V, --version Print version information
Because we set [Command::propagate_version
][crate::Command::propagate_version]:
$ 03_04_subcommands --version
clap [..]
$ 03_04_subcommands add --version
clap-add [..]