From bf7280554a22ed21f517ef315ceff265906c69e8 Mon Sep 17 00:00:00 2001 From: Sven-Hendrik Haase Date: Mon, 21 Feb 2022 00:50:39 +0100 Subject: Add man page support using --print-manpage (fixes #730) --- src/args.rs | 4 ++++ src/main.rs | 7 +++++++ 2 files changed, 11 insertions(+) (limited to 'src') 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, + /// 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| { -- cgit v1.2.3