Made -h, --help show license notice

Moved the help template into its own const, and concatenated it with the
interactive notice to append it to the help output.

Also, adjusted the license, warranty, and notice strings for increased
readability.

Signed-off-by: Christina Sørensen <christina@cafkafk.com>
This commit is contained in:
Christina Sørensen 2023-06-09 18:28:19 +02:00
parent c38b524e09
commit 0f7b525a55
Signed by: cafkafk
GPG key ID: CDDC792F655251ED
2 changed files with 23 additions and 20 deletions

View file

@ -15,11 +15,21 @@
// along with this program. If not, see https://www.gnu.org/gpl-3.0.html. // along with this program. If not, see https://www.gnu.org/gpl-3.0.html.
use crate::utils::dir::home_dir; use crate::utils::dir::home_dir;
use crate::utils::strings::INTERACTIVE_NOTICE;
use clap::{ArgAction, CommandFactory, Parser, Subcommand}; use clap::{ArgAction, CommandFactory, Parser, Subcommand};
const CONFIG_FILE: &str = "/.config/gg/config.yaml"; const CONFIG_FILE: &str = "/.config/gg/config.yaml";
const HELP_TEMPLATE: &str = "\
{before-help}{name} {version}
{author-with-newline}{about-with-newline}
{usage-heading} {usage}
{all-args}{after-help}
";
//#[clap(author, version, about, long_about = None)] //#[clap(author, version, about, long_about = None)]
#[derive(Parser, Debug)] #[derive(Parser, Debug)]
#[clap( #[clap(
@ -31,14 +41,7 @@ const CONFIG_FILE: &str = "/.config/gg/config.yaml";
long_about="A Rust GitOps and linkfarm orchestrator inspired by GNU Stow", long_about="A Rust GitOps and linkfarm orchestrator inspired by GNU Stow",
subcommand_required=false, subcommand_required=false,
arg_required_else_help=true, arg_required_else_help=true,
help_template="\ help_template=HELP_TEMPLATE.to_owned()+INTERACTIVE_NOTICE,
{before-help}{name} {version}
{author-with-newline}{about-with-newline}
{usage-heading} {usage}
{all-args}{after-help}
",
)] )]
pub struct Args { pub struct Args {
/// The config file to use /// The config file to use