From: Alex Henrie Date: Tue, 20 Sep 2022 17:54:33 GMT Subject: Re: [PATCH] builtin/diagnose.c: don't translate the two mode values Message-ID: In-Reply-To: <84848326-5cd9-b5b9-2dcb-a6d49879f47b@github.com> On Tue, Sep 20, 2022 at 6:35 AM Derrick Stolee wrote: > > In diff.c, the descriptors exist in angle brackets, so the right thing > would be N_(""). 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