All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Cc: git@vger.kernel.org, "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>,
	"Eric Sunshine" <sunshine@sunshineco.com>,
	"SZEDER Gábor" <szeder.dev@gmail.com>,
	"Philippe Blain" <levraiphilippeblain@gmail.com>
Subject: Re: [PATCH v2 5/9] help: note the option name on option incompatibility
Date: Wed, 23 Feb 2022 14:04:33 -0800	[thread overview]
Message-ID: <xmqq7d9ls0i6.fsf@gitster.g> (raw)
In-Reply-To: <patch-v2-5.9-e5c49089106-20220221T193708Z-avarab@gmail.com> ("Ævar Arnfjörð Bjarmason"'s message of "Mon, 21 Feb 2022 20:38:48 +0100")

Ævar Arnfjörð Bjarmason  <avarab@gmail.com> writes:

> Change the errors added in d35d03cf93e (help: simplify by moving to
> OPT_CMDMODE(), 2021-09-22) to quote the offending option at the user
> when invoked as e.g.:
>
>     git help --guides garbage
>
> Now instead of:
>
>     fatal: this option doesn't take any other arguments
>
> We'll emit:
>
>     fatal: the '--guides' option doesn't take any non-option arguments

Very good.

> Let's also rename the function, as it will be extended to do other
> checks that aren't "no extra argc" in a subsequent commit.
>
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
> ---
>  builtin/help.c | 15 ++++++++-------
>  1 file changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/builtin/help.c b/builtin/help.c
> index d387131dd83..1c1581ef850 100644
> --- a/builtin/help.c
> +++ b/builtin/help.c
> @@ -574,11 +574,12 @@ static const char *check_git_cmd(const char* cmd)
>  	return cmd;
>  }
>  
> -static void no_extra_argc(int argc)
> +static void opt_mode_usage(int argc, const char *opt_mode)
>  {
>  	if (argc)
> -		usage_msg_opt(_("this option doesn't take any other arguments"),
> -			      builtin_help_usage, builtin_help_options);
> +		usage_msg_optf(_("the '%s' option doesn't take any non-option arguments"),
> +			       builtin_help_usage, builtin_help_options,
> +			       opt_mode);
>  }
>  
>  int cmd_help(int argc, const char **argv, const char *prefix)
> @@ -604,20 +605,20 @@ int cmd_help(int argc, const char **argv, const char *prefix)
>  		printf("%s\n", _(git_more_info_string));
>  		break;
>  	case HELP_ACTION_GUIDES:
> -		no_extra_argc(argc);
> +		opt_mode_usage(argc, "--guides");
>  		list_guides_help();
>  		printf("%s\n", _(git_more_info_string));
>  		return 0;
>  	case HELP_ACTION_CONFIG_FOR_COMPLETION:
> -		no_extra_argc(argc);
> +		opt_mode_usage(argc, "--config-for-completion");
>  		list_config_help(SHOW_CONFIG_VARS);
>  		return 0;
>  	case HELP_ACTION_CONFIG_SECTIONS_FOR_COMPLETION:
> -		no_extra_argc(argc);
> +		opt_mode_usage(argc, "--config-sections-for-completion");
>  		list_config_help(SHOW_CONFIG_SECTIONS);
>  		return 0;
>  	case HELP_ACTION_CONFIG:
> -		no_extra_argc(argc);
> +		opt_mode_usage(argc, "--config");
>  		setup_pager();
>  		list_config_help(SHOW_CONFIG_HUMAN);
>  		printf("\n%s\n", _("'git help config' for more information"));

  reply	other threads:[~2022-02-23 22:04 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-28 15:35 [PATCH 0/7] help: test and fix small "help -g" regression Ævar Arnfjörð Bjarmason
2021-12-28 15:35 ` [PATCH 1/7] help doc: add missing "]" to "[-a|--all]" Ævar Arnfjörð Bjarmason
2021-12-28 15:35 ` [PATCH 2/7] help.c: use puts() instead of printf{,_ln}() for consistency Ævar Arnfjörð Bjarmason
2021-12-28 15:35 ` [PATCH 3/7] help tests: test "git" and "git help [-a|-g] spacing Ævar Arnfjörð Bjarmason
2021-12-28 15:35 ` [PATCH 4/7] help.c: split up list_all_cmds_help() function Ævar Arnfjörð Bjarmason
2021-12-28 15:35 ` [PATCH 5/7] help: error if [-a|-g|-c] and [-i|-m|-w] are combined Ævar Arnfjörð Bjarmason
2021-12-28 16:18   ` Eric Sunshine
2021-12-29  0:04     ` Ævar Arnfjörð Bjarmason
2021-12-28 15:35 ` [PATCH 6/7] help: add --no-[external-commands|aliases] for use with --all Ævar Arnfjörð Bjarmason
2021-12-28 16:28   ` Eric Sunshine
2021-12-28 15:35 ` [PATCH 7/7] help: don't print "\n" before single-section output Ævar Arnfjörð Bjarmason
2022-02-21 19:38 ` [PATCH v2 0/9] help: tests, parse_options() sanity, fix "help -g" regression Ævar Arnfjörð Bjarmason
2022-02-21 19:38   ` [PATCH v2 1/9] help doc: add missing "]" to "[-a|--all]" Ævar Arnfjörð Bjarmason
2022-02-21 19:38   ` [PATCH v2 2/9] help.c: use puts() instead of printf{,_ln}() for consistency Ævar Arnfjörð Bjarmason
2022-02-23 21:51     ` Junio C Hamano
2022-02-23 21:57       ` Ævar Arnfjörð Bjarmason
2022-02-21 19:38   ` [PATCH v2 3/9] help tests: test "git" and "git help [-a|-g] spacing Ævar Arnfjörð Bjarmason
2022-02-21 19:38   ` [PATCH v2 4/9] help.c: split up list_all_cmds_help() function Ævar Arnfjörð Bjarmason
2022-02-23 22:03     ` Junio C Hamano
2022-02-21 19:38   ` [PATCH v2 5/9] help: note the option name on option incompatibility Ævar Arnfjörð Bjarmason
2022-02-23 22:04     ` Junio C Hamano [this message]
2022-02-21 19:38   ` [PATCH v2 6/9] help: correct usage & behavior of "git help --all" Ævar Arnfjörð Bjarmason
2022-02-23 22:12     ` Junio C Hamano
2022-02-21 19:38   ` [PATCH v2 7/9] help: error if [-a|-g|-c] and [-i|-m|-w] are combined Ævar Arnfjörð Bjarmason
2022-02-23 22:16     ` Junio C Hamano
2022-02-21 19:38   ` [PATCH v2 8/9] help: add --no-[external-commands|aliases] for use with --all Ævar Arnfjörð Bjarmason
2022-02-23 22:19     ` Junio C Hamano
2022-02-21 19:38   ` [PATCH v2 9/9] help: don't print "\n" before single-section output Ævar Arnfjörð Bjarmason
2022-02-23 22:31     ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqq7d9ls0i6.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=levraiphilippeblain@gmail.com \
    --cc=pclouds@gmail.com \
    --cc=sunshine@sunshineco.com \
    --cc=szeder.dev@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.