cli.rs

 1use clap::{Parser, Subcommand};
 2use std::path::PathBuf;
 3/// Common utilities for Zed developers.
 4// For more information, see [matklad's repository README](https://github.com/matklad/cargo-xtask/)
 5#[derive(Parser)]
 6#[command(author, version, about, long_about = None)]
 7#[command(propagate_version = true)]
 8pub struct Cli {
 9    #[command(subcommand)]
10    pub command: Commands,
11}
12
13/// Command to run.
14#[derive(Subcommand)]
15pub enum Commands {
16    /// Builds theme types for interop with Typescript.
17    BuildThemeTypes {
18        #[clap(short, long, default_value = "schemas")]
19        out_dir: PathBuf,
20        #[clap(short, long, default_value = "theme.json")]
21        file_name: PathBuf,
22    },
23}