1 use clap::{Command, CommandFactory, Parser};
2 use clap_complete::{generate, Generator, Shell};
5 /// Generate shell completions
6 #[derive(Parser, Debug)]
11 fn print_completions<G: Generator>(gen: G, cmd: &mut Command) {
12 generate(gen, cmd, cmd.get_name().to_string(), &mut io::stdout());
15 pub fn cmd_completions(argv: Vec<String>) -> i32 {
16 let cli = Cli::parse_from(argv);
17 print_completions(cli.shell, &mut super::Cli::command());