diff --git a/examples/pacman.md b/examples/pacman.md index daa26dc8..dff5149a 100644 --- a/examples/pacman.md +++ b/examples/pacman.md @@ -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] + +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: + ... packages + +OPTIONS: + -h, --help Print help information + -i, --info view package information + -s, --search ... search remote repositories for matching strings + +``` + +And errors: +```console +$ pacman -S -s foo -i bar +? failed +error: The argument '--search ...' cannot be used with '--info' + +USAGE: + pacman[EXE] {sync, --sync, -S} --search ... ... + +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.