use crate::common::{Handler, MimeOrExtension};
#[derive(clap::Clap)]
#[clap(global_setting = clap::AppSettings::DeriveDisplayOrder)]
#[clap(global_setting = clap::AppSettings::DisableHelpSubcommand)]
#[clap(version = clap::crate_version!())]
pub enum Cmd {
List {
#[clap(long, short)]
all: bool,
},
Open {
#[clap(required = true)]
paths: Vec<String>,
},
Set {
mime: MimeOrExtension,
handler: Handler,
},
Unset { mime: MimeOrExtension },
Launch {
mime: MimeOrExtension,
args: Vec<String>,
},
Get {
#[clap(long)]
json: bool,
mime: MimeOrExtension,
},
Add {
mime: MimeOrExtension,
handler: Handler,
},
#[clap(setting = clap::AppSettings::Hidden)]
Autocomplete {
#[clap(short)]
desktop_files: bool,
#[clap(short)]
mimes: bool,
},
}