git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2] i18n: format_tracking_info "Your branch is behind" message

From
Junio C Hamano <gitster@pobox.com>
Date
Feb 2, 2012, 01:50 UTC
Message-ID
<7vr4yeypei.fsf@alter.siamese.dyndns.org>
In-Reply-To
<1328146639-87863-1-git-send-email-worldhello.net@gmail.com>
Jiang Xin <worldhello.net@gmail.com> writes:
Show 31 quoted lines
> Function format_tracking_info in remote.c is called by
> wt_status_print_tracking in wt-status.c, which will print
> branch tracking message in git-status. git-checkout also
> show these messages through it's report_tracking function.
>
> Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
> ---
>  remote.c |   48 +++++++++++++++++++++++++++++++++++++-----------
>  1 files changed, 37 insertions(+), 11 deletions(-)
>
> diff --git a/remote.c b/remote.c
> index 73a38..45ac1 100644
> --- a/remote.c
> +++ b/remote.c
> @@ -1572,19 +1572,45 @@ int format_tracking_info(struct branch *branch, struct strbuf *sb)
>  	base = branch->merge[0]->dst;
>  	base = shorten_unambiguous_ref(base, 0);
>  	if (!num_theirs)
> -		strbuf_addf(sb, "Your branch is ahead of '%s' "
> -			    "by %d commit%s.\n",
> -			    base, num_ours, (num_ours == 1) ? "" : "s");
> +		strbuf_addf(sb,
> +			Q_(
> +			/* The singular version */
> +			"Your branch is ahead of '%s' by %d commit.\n",
> +			/* The plural version */
> +			"Your branch is ahead of '%s' by %d commits.\n",
> +			/* Give ngettext() the count */
> +			num_ours),
> +			base,
> +			num_ours);
It may be just me, but I think
		strbuf_addf(sb,
			Q_("Your branch is ahead of '%s' by %d commit.\n",
			   "Your branch is ahead of '%s' by %d commits.\n",
			   num_ours),
                        base, num_ours);
would be far easier to read than these repetitive comments.

It allows you to see it more clearly that the two strings and one variable are given to Q_(), and the last two, base and num_ours, are the values to be formatted by whatever the format string Q_() would choose.

When the strings are longer, an extra indent would probably help, e.g.
		strbuf_addf(sb,
			Q_("Your branch is behind '%s' by %d commit, "
				"and can be fast-forwarded.\n",
			   "Your branch is behind '%s' by %d commits, "
				"and can be fast-forwarded.\n",
			   num_theirs),
			base, num_theirs);
Previous: Jiang Xin
Message 2 of 2 in “i18n: format_tracking_info "Your branch is behind" message”
  1. i18n: format_tracking_info "Your branch is behind" messageJiang Xin, Feb 2, 2012
  2. Junio C HamanoFeb 2, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.