[libvirt] l10n/i18n ~ po files and their cycle

Justin Clift jclift at redhat.com
Wed Jan 26 02:16:25 UTC 2011


On 26/01/2011, at 7:58 AM, Zdenek Styblik wrote:
<snip>
> In the lame terms - modifying cs.po file - bad or good?
> Where to put/post changes/diff/whatever.
> 
> And I must note I'm not going to use Czech translations by myself nor
> planning to do 100% translation on my own time. Yet I can't stand
> rubbish that's in the 'po/cs.po'.

I *think* the rough idea with the translations for things, is that there is
a web interface for doing translation stuff.  The software used is called
"Transifex":

  http://www.transifex.net/

The way it kind of works, is that when you have a new project (call it "myfoo"
for example), you can make sure all of the "master" text strings needing
translation are put into one file. (call it "myfoo.pot")

You then register the myfoo project with the Transifex crowd, pointing them
to the source code repository, and the myfoo.pot file in it.  Transifex reads
the text strings from that file.   (git://www.myfoo.org/source/myfoo.pot)

Transifex then have a web interface, where people can choose their
language (say French) and it gives them a list of each text string from that
master list.

When a person then submits the text string, Transifex saves it to its
internal database.  At some point (generally before a new myfoo release)
someone from the myfoo project logs into Transifex and gets a tarball
dump of all the translated strings.  These are in a format called po, and it's
one per language.  i.e.  myfoo_cz.po, myfoo_es.po, myfoo_fr.po, etc

The person adds these strings to the myfoo source code, and they get
included with the release.  Iin theory, from this point GNU gettext makes
sure that when a user of myfoo has a locale with (say) French, then the
French translations are loaded and displayed instead of those from the
master language.

Note, this is all a really rough blow by blow concept description.  There
are alternative software packages out there to Transifex, and there are
also alternative translation file formats other than .pot/po/etc.  But, it
gives the idea.

Does that help at all? :)

+ Justin




More information about the libvir-list mailing list