Re: [PATCH] builtin/diagnose.c: don't translate the two mode values
From: Alex Henrie <hidden>
Date: 2022-09-20 17:54:49
On Tue, Sep 20, 2022 at 6:35 AM Derrick Stolee [off-list ref] wrote:
In diff.c, the descriptors exist in angle brackets, so the right thing
would be N_("<mode>"). This seems non-standard compared to most other
places.
I don't know which form is preferred in the code, but I did find that
usage_argh adds the angle brackets if they are not already present:
static int usage_argh(const struct option *opts, FILE *outfile)
{
const char *s;
int literal = (opts->flags & PARSE_OPT_LITERAL_ARGHELP) ||
!opts->argh || !!strpbrk(opts->argh, "()<>[]|");
if (opts->flags & PARSE_OPT_OPTARG)
if (opts->long_name)
s = literal ? "[=%s]" : "[=<%s>]";
else
s = literal ? "[%s]" : "[<%s>]";
else
s = literal ? " %s" : " <%s>";
return utf8_fprintf(outfile, s, opts->argh ? _(opts->argh) : _("..."));
}
Here is a similar stale translatable regex in diff.c:
OPT_CALLBACK_F(0, "diff-filter", options, N_("[(A|C|D|M|R|T|U|X|B)...[*]]"),
N_("select files by diff type"),
So if you are looking into these kinds of replacements, it might be
good to add instances like this. They are less important to the 2.38.0
release, though.Yeah, that one probably shouldn't be translatable either.
This long-winded email is all just to say that I've looked into the standard way to handle this and agree that you are changing the code to match our best practices.
Thanks! I appreciate the feedback. -Alex