mirror of
https://github.com/clap-rs/clap
synced 2024-12-14 23:02:31 +00:00
9e64387ef0
The extra whitespace was targeted at machine processing for a subset of users for a subset of runs of CLIs. On the other hand, there is a lot of concern over the extra verbose output. A user can set the help template for man, if desired. They can even do something (env? feature flag?) to make it only run when doing man generation. We also have #3174 in the works. So let's focus on the end-user reading `--help`. People wanting to use `help2man` have workarounds to do what they need. Fixes #3096
75 lines
1.2 KiB
Markdown
75 lines
1.2 KiB
Markdown
*Jump to [source](git.rs)*
|
|
|
|
Git is an example of several common subcommand patterns.
|
|
|
|
Help:
|
|
```bash
|
|
$ git
|
|
? failed
|
|
git
|
|
A fictional versioning CLI
|
|
|
|
USAGE:
|
|
git[EXE] <SUBCOMMAND>
|
|
|
|
OPTIONS:
|
|
-h, --help Print help information
|
|
|
|
SUBCOMMANDS:
|
|
add adds things
|
|
clone Clones repos
|
|
help Print this message or the help of the given subcommand(s)
|
|
push pushes things
|
|
$ git help
|
|
git
|
|
A fictional versioning CLI
|
|
|
|
USAGE:
|
|
git[EXE] <SUBCOMMAND>
|
|
|
|
OPTIONS:
|
|
-h, --help Print help information
|
|
|
|
SUBCOMMANDS:
|
|
add adds things
|
|
clone Clones repos
|
|
help Print this message or the help of the given subcommand(s)
|
|
push pushes things
|
|
$ git help add
|
|
git[EXE]-add
|
|
adds things
|
|
|
|
USAGE:
|
|
git[EXE] add <PATH>...
|
|
|
|
ARGS:
|
|
<PATH>... Stuff to add
|
|
|
|
OPTIONS:
|
|
-h, --help Print help information
|
|
```
|
|
|
|
A basic argument:
|
|
```bash
|
|
$ git add
|
|
? failed
|
|
git[EXE]-add
|
|
adds things
|
|
|
|
USAGE:
|
|
git[EXE] add <PATH>...
|
|
|
|
ARGS:
|
|
<PATH>... Stuff to add
|
|
|
|
OPTIONS:
|
|
-h, --help Print help information
|
|
$ git add Cargo.toml Cargo.lock
|
|
Adding ["Cargo.toml", "Cargo.lock"]
|
|
```
|
|
|
|
External subcommands:
|
|
```bash
|
|
$ git custom-tool arg1 --foo bar
|
|
Calling out to "custom-tool" with ["arg1", "--foo", "bar"]
|
|
```
|