From: "Raj Ojha via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: Raj Ojha <rajojha047@gmail.com>, Raj Ojha <rajojha047@gmail.com>
Subject: [PATCH] describe: use Q_() for pluralization of commit and tag counts
Date: Thu, 15 Oct 2026 09:54:29 +0000 [thread overview]
Message-ID: <pull.2257.git.1792058069306.gitgitgadget@gmail.com> (raw)
From: Raj Ojha <rajojha047@gmail.com>
In `describe_commit()`, debug messages print the number of commits
traversed and the number of candidate tags found using basic `_()`
localization format strings:
_("traversed %lu commits\n")
_("found %i tags; gave up search at %s\n")
Because these messages display an integer count of items, using `_()`
fails to account for languages whose pluralization rules differ from
English (such as languages with multiple plural forms).
Replace these calls with `Q_()` to allow gettext (`ngettext()`) to choose
the grammatically appropriate singular or plural string depending on the
integer count.
Signed-off-by: Raj Ojha <rajojha047@gmail.com>
---
describe: use Q_() for pluralization of commit and tag counts
In describe_commit(), debug messages print the number of commits
traversed and the number of candidate tags found using basic _()
localization format strings:
_("traversed %lu commits\n")
_("found %i tags; gave up search at %s\n")
Because these messages display an integer count of items, using _()
fails to account for languages whose pluralization rules differ from
English (such as languages with multiple plural forms).
Replace these calls with Q_() to allow gettext (ngettext()) to choose
the grammatically appropriate singular or plural string depending on the
integer count.
Signed-off-by: Raj Ojha rajojha047@gmail.com
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-2257%2FRajojha-1%2Fdescribe-q-pluralize-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-2257/Rajojha-1/describe-q-pluralize-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/2257
builtin/describe.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/builtin/describe.c b/builtin/describe.c
index c0abc931a5..1a7317c811 100644
--- a/builtin/describe.c
+++ b/builtin/describe.c
@@ -481,10 +481,16 @@ static void describe_commit(struct commit *cmit, struct strbuf *dst)
label_width, _(prio_names[t->name->prio]),
t->depth, t->name->path);
}
- fprintf(stderr, _("traversed %lu commits\n"), seen_commits);
+ fprintf(stderr,
+ Q_("traversed %lu commit\n",
+ "traversed %lu commits\n",
+ seen_commits),
+ seen_commits);
if (gave_up_on) {
fprintf(stderr,
- _("found %i tags; gave up search at %s\n"),
+ Q_("found %i tag; gave up search at %s\n",
+ "found %i tags; gave up search at %s\n",
+ max_candidates),
max_candidates,
oid_to_hex(&gave_up_on->object.oid));
}
base-commit: 6de20f6092dcf9bdb1c8efe03db4b70c82b423dd
--
gitgitgadget
reply other threads:[~2026-10-15 9:54 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=pull.2257.git.1792058069306.gitgitgadget@gmail.com \
--to=gitgitgadget@gmail.com \
--cc=git@vger.kernel.org \
--cc=rajojha047@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox