gettext, boost::locale, binary resource format and translations

Jan Holesovsky kendy at collabora.com
Thu Jun 1 09:29:46 UTC 2017


Hi Caolan,

Caolán McNamara píše v St 31. 05. 2017 v 15:23 +0100:

> I've been experimenting with replacing the resource src/res system with
> a more standard gettext style solution.

Sounds great to me!

> 17. size concerns ?
> 
> We always bundle en-US resources in our install, these go away and the
> binaries increase by a somewhat smaller amount than the size of the
> removed en-US res file.
> 
> Translations which, either by design (en-GB, en-ZA) or because of
> limited translations (brx), share a lot of strings with en-US shrink a
> lot.
> 
> Translations which are basically full, e.g. de, appear to be around the
> same size for a sample large translated module, e.g. cui where the
> gettext prototype (uncompressed .mo) and 5-3 .res + .ui translation
> zip-compressed file despite the .mo containing the full en-US keys vs
> the .res using numerical keys and the .ui using widget_id keys
> 
> This is a bit surprising, maybe its because (even zipped) in general
> the simple en-US key strings are shorter than the .ui zip widget id key
> strings currently used or perhaps the .res format has more overhead
> than I thought.

I was concerned about this, so really glad it's not an issue at all :-)

> 18. Trashing existing translations ?
> 
> This is my unknown, if we make a change like this, which is reasonably
> small from the coding perspective, do we have a means to mass convert
> everything in pootle to make it a trivial change for translators too ?
> 
> It's reasonable easy to script changing the .po files in translations
> to match the proposed layout, and my prototype does this in order to
> reuse the old translation for my experimental builds, but do we have
> the means to e.g. reimport those modified translations into pootle ?
> 
> Or do we have other means to manipulate the pootle translations to
> avoid ~all translations becoming invalid/fuzzy and avoid forcing manual
> inspection of practically every string. Ideally I'd like everything
> translated to remain translated so there's no angry translator
> pitchfork-wielding mob.

Cloph can do miracles with the Pootle migrations from what I've seen in
helpcontent - Cloph, is this possible?

All the best,
Kendy



More information about the LibreOffice mailing list