pace_rs/commands/
setup.rs

1//! `setup` subcommand
2
3use abscissa_core::{Command, Runnable};
4use clap::{Parser, Subcommand};
5
6mod completions;
7mod config;
8mod project;
9mod show;
10
11// TODO! Project command
12// /// Setup a new pace project
13// Project(project::ProjectSubCmd),
14
15// TODO!: Explain subcommand, to show the current pace configuration and explain what each field means
16
17/// `setup` subcommand
18#[derive(Subcommand, Command, Debug, Runnable)]
19pub enum SetupSubCmd {
20    /// Create a new pace config and activity log
21    #[clap(alias = "init", alias = "new", alias = "i", alias = "c")]
22    Config(config::ConfigSubCmd),
23
24    /// Show the current pace configuration
25    Show(show::ShowSubCmd),
26
27    /// Generate shell completions for the specified shell
28    #[clap(alias = "comp")]
29    Completions(completions::CompletionsCmd),
30}
31
32/// `setup` subcommand
33#[derive(Command, Debug, Parser, Runnable)]
34pub struct SetupCmd {
35    #[clap(subcommand)]
36    commands: SetupSubCmd,
37}