use clap::{Parser, Subcommand}; #[derive(Parser)] #[command(name = "olla", about = "Couteau suisse local : réseau, domotique, déploiement, et plus.")] pub struct Cli { #[command(subcommand)] pub command: Commands, } #[derive(Subcommand)] pub enum Commands { /// Navigation entre les bureaux bspwm #[command(subcommand)] Desktop(DesktopCommands), } #[derive(Subcommand)] pub enum DesktopCommands { /// Aller à gauche (Mail→Web, Code→Term) Left, /// Aller à droite (Web→Mail, Term→Code) Right, /// Aller en haut (Term→Web, Code→Mail) Up, /// Aller en bas (Web→Term, Mail→Code) Down, /// Basculer vers/depuis Others Others, }