diff options
author | Soispha <soispha@vhack.eu> | 2024-01-20 12:03:46 +0100 |
---|---|---|
committer | Soispha <soispha@vhack.eu> | 2024-01-20 12:03:46 +0100 |
commit | 089c08af03849fb2883a17726462ca0d8ce8b51f (patch) | |
tree | d5d9285c6beab0babd16fe533b621ed56280bdd4 /sys/nixpkgs/pkgs/yt/src/bin/yts/args.rs | |
parent | feat(hm/conf/nvim/plgs/treesitter): Add custom parser for `yts` (diff) | |
download | nixos-config-089c08af03849fb2883a17726462ca0d8ce8b51f.zip |
feat(sys/nixpkgs/pkgs/yt): Merge ytc and the rewritten ytc
Diffstat (limited to 'sys/nixpkgs/pkgs/yt/src/bin/yts/args.rs')
-rw-r--r-- | sys/nixpkgs/pkgs/yt/src/bin/yts/args.rs | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/sys/nixpkgs/pkgs/yt/src/bin/yts/args.rs b/sys/nixpkgs/pkgs/yt/src/bin/yts/args.rs new file mode 100644 index 00000000..56989421 --- /dev/null +++ b/sys/nixpkgs/pkgs/yt/src/bin/yts/args.rs @@ -0,0 +1,41 @@ +use clap::{Parser, Subcommand}; +/// A helper for selecting which videos to download from ytcc to ytc +#[derive(Parser, Debug)] +#[clap(author, version, about, long_about = None)] +pub struct Args { + #[command(subcommand)] + /// subcommand to execute + pub subcommand: Option<Command>, +} + +#[derive(Subcommand, Debug)] +pub enum Command { + #[clap(value_parser)] + /// Which ordering to use + Order { + #[command(subcommand)] + command: OrderCommand, + }, +} + +#[derive(Subcommand, Debug)] +pub enum OrderCommand { + #[clap(value_parser)] + /// Order by date + #[group(required = true)] + Date { + #[arg(value_parser)] + /// Order descending + desc: bool, + #[clap(value_parser)] + /// Order ascending + asc: bool, + }, + #[clap(value_parser)] + /// Pass a raw SQL 'ORDER BY' value + Raw { + #[clap(value_parser)] + /// The raw value(s) to pass + value: Vec<String>, + }, +} |