clap/examples/cargo-example-derive.md
Ed Page 42c943844c fix(help): Use Command in place of Subcommand
In switching to title case for help headings (#4123), it caused me to
look at "subcommand" in a fresh light.  I can't quite put my finger on
it but "Subcommand" looks a bit sloppy.  I also have recently been
surveying other CLIs and they just use "command" as well.

All of them are commands anyways, just some are children of others
(subcommands) while others are not (root or top-level commands, or just
command).  Context is good enough for clarifying subcommands from root
commands.

This is part of #4132
2022-08-31 08:53:10 -05:00

1.1 KiB

For more on creating a custom subcommand, see the cargo book. The crate clap-cargo can help in mimicking cargo's interface.

The help looks like:

$ cargo-example-derive --help
cargo 

Usage:
    cargo <COMMAND>

Commands:
    example-derive    A simple to use, efficient, and full-featured Command Line Argument Parser
    help              Print this message or the help of the given subcommand(s)

Options:
    -h, --help    Print help information

$ cargo-example-derive example-derive --help
cargo-example-derive [..]
A simple to use, efficient, and full-featured Command Line Argument Parser

Usage:
    cargo example-derive [OPTIONS]

Options:
        --manifest-path <MANIFEST_PATH>    
    -h, --help                             Print help information
    -V, --version                          Print version information

Then to directly invoke the command, run:

$ cargo-example-derive example-derive
None

$ cargo-example-derive example-derive --manifest-path Cargo.toml
Some("Cargo.toml")