Subject: Re: [RFC/PATCH] i18n of multi-line messages

From: Andreas Schwab <[email-masked]>
Date: Thu, 22 Dec 2011 12:56:36 +0100

Chris Packham <[email-masked]> writes:

> Hi Junio,
>
> On 12/22/2011 08:38 PM, Junio C Hamano wrote:
>> +	for (cp = buf.buf; *cp; cp = np) {
>> +		np = strchrnul(cp, '\n');
>> +		/*
>> +		 * TRANSLATORS: the format is designed so that in RTL
>> +		 * languages you could reorder and put the "prefix" at
>> +		 * the end instead of the beginning of a line if you
>> +		 * wanted to.
>> +		 */
>> +		strbuf_addf(&line,
>> +			    _("%s: %.*s\n"),
>> +			    prefix,
>> +			    (int)(np - cp), cp);
>> +		emit(&line, cb_data);
>> +		strbuf_reset(&line);
>> +		if (*np)
>> +			np++;
>> +	}
>
> Forgive my ignorance if I've missed something, but how is this going to
> work for RTL languages? Translators can change the format string but
> they can't change the order of parameters passed to strbuf_addf.

Translations can select the parameters to use with the n$ specification,
eg. "%3$.*2$s: %$1s\n"

Andreas.

-- 
Andreas Schwab, [email-masked]
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."