From 1052eeb22e3329b78a00f19b88671ba973c5c104 Mon Sep 17 00:00:00 2001 From: Jeremiah Russell Date: Tue, 14 Oct 2025 13:52:32 +0100 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20feat(cli):=20enhance=20cli=20subcom?= =?UTF-8?q?mand=20ordering=20and=20grouping?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - improve subcommand organization for better user experience - implement display_order attribute for logical ordering of subcommands - introduce next_help_heading for grouping subcommands under meaningful titles --- src/cli/main.rs | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/cli/main.rs b/src/cli/main.rs index 229398e..3b28aea 100644 --- a/src/cli/main.rs +++ b/src/cli/main.rs @@ -30,22 +30,26 @@ struct Cli { #[derive(Subcommand, Debug)] enum SubCmds { /// Configure rules and labels - #[clap(name = "config")] + #[clap( + name = "config", + display_order = 1, + next_help_heading = "Configuration" + )] Config(ConfigCli), /// List messages - #[clap(name = "message")] + #[clap(name = "message", display_order = 3, next_help_heading = "Messages")] Message(MessageCli), /// List labels - #[clap(name = "label")] + #[clap(name = "label", display_order = 2, next_help_heading = "Labels")] Labels(LabelCli), /// Move messages to trash - #[clap(name = "trash")] + #[clap(name = "trash", display_order = 4, next_help_heading = "Messages")] Trash(TrashCli), /// Delete messages - #[clap(name = "delete")] + #[clap(name = "delete", display_order = 5, next_help_heading = "Messages")] Delete(DeleteCli), /// Run the rules from the rules configuration - #[clap(name = "run")] + #[clap(name = "run", display_order = 6, next_help_heading = "Rule Processing")] Run(RunCli), }