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}