← Back to team overview

ubuntu-translations-coordinators team mailing list archive

Re: [Debian-l10n-devel] Translations cleanup

 

On 06/09/2010 04:18 PM, Martin Bagge / brother wrote:
On 2010-06-09 10:02, Arne Goetje wrote:
How we deal with this on a case by case basis would need to be
discussed. E.g. we could expect the fr.po file to mainly include strings
from fr_FR, however if a software originates in Canada, translators
might have used fr_CA terms which might not be appropriate in France. In
that case it might make sense to put the fr_CA strings into fr.po and
use a fr_FR diff for those strings which would be used different in
France. Or, we modify those strings, so that fr.po is always equal to
fr_FR and put the diffs into fr_CA.

I might have looked past some nuance here.
If we place fr_FR in fr.po in some cases and have fr_CA.po as diffs to
that and in some other cases we have fr_CA in fr.po and fr_FR.po as diff
to that I think we might have a messy situation on our future hands.

For most languages I would guess that there won't be much of a problem
to determine to use one "version" as the top level (fr_FR as fr and then
diffs (fr_CA?) where needed).

This would be preferred, I think. I just picked this example, because Christian mentioned the case, where only fr_CA is available for French. Then it needs to be decided what is preferred. Either keep fr_CA as default for French and make a diff for fr_FR, or rip fr_CA apart, build a new fr.po with common strings and the rest leave as diff and fill up the remaining strings in fr.po with fr_FR ones.

 > This would need to be discussed and we should establish a common
 > policy for this.

It would probably need some updated translation tools to work with the
diff situation.

gettext handles this just fine. All we need to do is to set the LANGUAGE environment variable correctly.
E.g.:
LANGUAGE=fr_FR:fr for French users and
LANGUAGE=fr_CA:fr for Canadian users.
This way, if the string is not found in the first .po (the diff), the second choice gets used.
For Users from New Zealand, this would look like this, btw:
LANGUAGE=en_NZ:en_AU:en_GB:en :)

If the application in question does not use gettext, we probably need to keep separate .po files with complete coverage anyways... or hack the code to make it support gettext. ;)

Cheers
Arne



Follow ups

References