From: Jonathan Nieder Date: Thu, 08 Mar 2012 22:07:24 GMT Subject: Re: [PATCH 3/5] i18n: parseopt: lookup help and argument translations when showing usage Message-ID: <20120308220724.GA10270@burratino> In-Reply-To: <1331198198-22409-4-git-send-email-pclouds@gmail.com> Nguyễn Thái Ngọc Duy wrote: > --- a/parse-options.c > +++ b/parse-options.c > @@ -490,7 +490,7 @@ static int usage_argh(const struct option *opts, FILE *outfile) > s = literal ? "[%s]" : "[<%s>]"; > else > s = literal ? " %s" : " <%s>"; > - return fprintf(outfile, s, opts->argh ? opts->argh : "..."); > + return fprintf(outfile, s, opts->argh ? gettext(opts->argh) : "..."); It is ok to use _() with an argument that is not a string literal, and in fact it is needed if the argument is to be poisoned. Maybe it would be worth resending the patch to make the gettext() identifier not available in NO_GETTEXT builds, so this kind of thing is easier to catch. Thanks and hope that helps, Jonathan