aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/args.rs4
-rw-r--r--src/main.rs7
2 files changed, 11 insertions, 0 deletions
diff --git a/src/args.rs b/src/args.rs
index 77925a2..841db3a 100644
--- a/src/args.rs
+++ b/src/args.rs
@@ -156,6 +156,10 @@ pub struct CliArgs {
#[clap(long = "print-completions", value_name = "shell", arg_enum)]
pub print_completions: Option<Shell>,
+ /// Generate man page
+ #[clap(long = "print-manpage")]
+ pub print_manpage: bool,
+
/// TLS certificate to use
#[cfg(feature = "tls")]
#[clap(long = "tls-cert", requires = "tls-key", value_hint = ValueHint::FilePath)]
diff --git a/src/main.rs b/src/main.rs
index 63a620d..de10d7d 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -40,6 +40,13 @@ fn main() -> Result<()> {
return Ok(());
}
+ if args.print_manpage {
+ let clap_app = args::CliArgs::command();
+ let man = clap_mangen::Man::new(clap_app);
+ man.render(&mut io::stdout())?;
+ return Ok(());
+ }
+
let miniserve_config = MiniserveConfig::try_from_args(args)?;
run(miniserve_config).map_err(|e| {