Merge pull request #3465 from epage/pacman

docs(examples): Show pacman-style help
This commit is contained in:
Ed Page 2022-02-14 12:40:07 -06:00 committed by GitHub
commit bf771a266c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -34,5 +34,54 @@ Searching for name...
```
*(users can "stack" short subcommands with short flags or with other short flag subcommands)*
In the help, this looks like:
```console
$ pacman -h
pacman 5.2.1
Pacman Development Team
package manager utility
USAGE:
pacman[EXE] <SUBCOMMAND>
OPTIONS:
-h, --help Print help information
-V, --version Print version information
SUBCOMMANDS:
-Q--queryquery Query the package database.
-S--syncsync Synchronize packages.
help Print this message or the help of the given subcommand(s)
$ pacman -S -h
pacman[EXE]-sync
Synchronize packages.
USAGE:
pacman[EXE] {sync, --sync, -S} [OPTIONS] [--] [package]...
ARGS:
<package>... packages
OPTIONS:
-h, --help Print help information
-i, --info view package information
-s, --search <search>... search remote repositories for matching strings
```
And errors:
```console
$ pacman -S -s foo -i bar
? failed
error: The argument '--search <search>...' cannot be used with '--info'
USAGE:
pacman[EXE] {sync, --sync, -S} --search <search>... <package>...
For more information try --help
```
**NOTE:** Keep in mind that subcommands, flags, and long flags are *case sensitive*: `-Q` and `-q` are different flags/subcommands. For example, you can have both `-Q` subcommand and `-q` flag, and they will be properly disambiguated.
Let's make a quick program to illustrate.