Crates.io | clap_allgen |
lib.rs | clap_allgen |
version | 0.2.1 |
source | src |
created_at | 2024-01-09 13:43:19.642621 |
updated_at | 2024-09-16 11:11:42.480529 |
description | The complete clap generation utility to give your command-line application users a more polished experience right out of the box. |
homepage | |
repository | https://github.com/wiktor-k/clap_allgen |
max_upload_size | |
id | 1093937 |
size | 33,014 |
The complete clap generation utility to give your command-line application users a more polished experience right out of the box.
This single crate integrates all other shell-specific crates to generate all the things at once.
To create all shell completions use the following command:
use clap_allgen::render_shell_completions;
#[derive(Debug, clap::Parser)]
enum Commands {
First,
Second,
Third,
}
render_shell_completions::<Commands>("/tmp/shell-completions").expect("generation to work");
To generate man pages for your commands use:
use clap_allgen::render_manpages;
#[derive(Debug, clap::Parser)]
enum Commands {
First,
Second,
Third,
}
render_manpages::<Commands>("/tmp/man-pages").expect("generation to work");
Since the project is called clap_allgen it tries to generate completions for every shell that has a Rust crate.
For people who want to have more fine-grained control over dependencies that are pulled in, this crate offers a way to disable individual dependencies by using crate features.
By default all features are enabled so default-features = false
is required to override it.
Then, one can opt-in using the following features:
nushell
- generates NuShell completions using clap_complete_nushell
fig
- generates Fig completions using clap_complete_fig
carapace
- generates Carapace spec files using carapace_spec_clap
This project is licensed under either of:
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.