Create a command line interface binary with some common dependencies ((clap
||
docopt
) and error_chain
)
cargo install cargo-cli
In general, this is extension is used in the same manner as you would use cargo new --bin
.
Most of the command line arguments supported by cargo new
are supported by cargo cli
and are
actually passed through to cargo new
.
In addition, cargo cli
supports the following options:
arg_parser
: Specify the argument parser to use in the generated output. [default: clap] [values: clap, docopt]license
: Specify licensing to include in the generated output. [default: both] [values: both, mit, apache, none]no-readme
: Turn off README.md generation.no-latest
: Turn off the crates.io query for the latest version (use defaults).```text cargo-cli 0.1.0
USAGE:
cargo-cli cli [FLAGS] [OPTIONS]
FLAGS: --frozen Require Cargo.lock and cache are up to date -h, --help Prints help information --locked Require Cargo.lock is up to date --no-latest Turn off the crates.io query for the latest version (use defaults). --no-readme Turn off README.md generation. -q, --quiet No output printed to stdout -v Use verbose output (-vv very verbose/build.rs output)
OPTIONS:
-a, --arg_parser
ARGS:
cargo cli <path>
cargo cli -a docopt <path>
cargo cli --license none --no-readme <path>
cargo new
argumentscargo cli --vcs pijul -vv -a docopt --name flambe <path>
text
.
├── Cargo.toml
├── LICENSE-APACHE
├── LICENSE-MIT
├── README.md
└── src
├── error.rs
├── main.rs
└── run.rs
text
.
├── Cargo.toml
└── src
├── error.rs
├── main.rs
└── run.rs