rich-click-rs 1.0.2

Rich help formatting for click-rs
Documentation
use click::command::Command;
use click::error::ClickError;
use click::group::Group;

use crate::{
    main_rich_command, main_rich_command_with_errors, main_rich_group, main_rich_group_with_errors,
    RichHelpConfig,
};

pub trait RichMainExt {
    fn main_rich(&self) -> Result<(), ClickError>;
    fn main_rich_with_errors(&self) -> Result<(), ClickError>;
}

impl RichMainExt for Command {
    fn main_rich(&self) -> Result<(), ClickError> {
        let args: Vec<String> = std::env::args().skip(1).collect();
        let cfg = RichHelpConfig::global().clone();
        main_rich_command(self, args, &cfg)
    }

    fn main_rich_with_errors(&self) -> Result<(), ClickError> {
        let args: Vec<String> = std::env::args().skip(1).collect();
        let cfg = RichHelpConfig::global().clone();
        main_rich_command_with_errors(self, args, &cfg)
    }
}

impl RichMainExt for Group {
    fn main_rich(&self) -> Result<(), ClickError> {
        let args: Vec<String> = std::env::args().skip(1).collect();
        let cfg = RichHelpConfig::global().clone();
        main_rich_group(self, args, &cfg)
    }

    fn main_rich_with_errors(&self) -> Result<(), ClickError> {
        let args: Vec<String> = std::env::args().skip(1).collect();
        let cfg = RichHelpConfig::global().clone();
        main_rich_group_with_errors(self, args, &cfg)
    }
}