use clap_complete::{Shell, generate_to};
use clap_mangen::generate_to as generate_man_to;
use std::fs;
use std::io::Error;
#[path = "src/cli/build/mod.rs"]
mod cli;
fn main() -> Result<(), Error> {
if std::env::var("MANTA_REGENERATE_DOCS").is_err() {
return Ok(());
}
let man_dir = "man";
fs::create_dir_all(man_dir)?;
generate_man_to(cli::build_cli(), man_dir)?;
println!("cargo:warning=man pages regenerated in {man_dir}/");
let completion_dir = "autocomplete_shell_scripts";
fs::create_dir_all(completion_dir)?;
for shell in [Shell::Bash, Shell::Zsh, Shell::Fish, Shell::Elvish] {
let path = generate_to(
shell,
&mut cli::build_cli(),
"manta",
completion_dir,
)?;
println!("cargo:warning=completion regenerated: {path:?}");
}
Ok(())
}