[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: new proposal: Translating Debian packages' descriptions



Hello Richard,

On Tue, 4 Sep 2001, Richard Atterer wrote:

> On Tue, Sep 04, 2001 at 01:22:16PM +0200, Michael Bramer wrote:
> > 1.) use all the time _gettext_!

> I agree, otherwise we'd just have to keep re-inventing the wheel.

> > 2.) get the .po/.mo files on the system
> [snip]
> >    If we don't like this process on the client all the time, we can
> >    produce Descriptions-XX.po files and the clinet must only
> >    download this file and save this in the right dir. But this file
> >    will include the orignal description and with this it has the
> >    double size and download time.

> I don't know enough about gettext - am I assuming correctly that in
> the .mo file, the English translation is replaced with a checksum or
> similar, so you do not need to store the complete English translation?

Gettext normally uses the entire untranslated string as the key in the .mo
file.  This has many advantages when dealing with translation of strings in
programs, where the untranslated string is actually present in the program
source, and this is a big reason the GNU project favors gettext over catgets
systems found on other Unices.  It makes less sense in the case of package
descriptions, however, because we're effectively doing two lookups -- first to
find the English description in Packages.gz using the package name and version
as a key, then to find the translated description in the .mo file using the
English description as a key.

> >    check this calculation:
> >      If in all sources are only one desription with 130 (geziped)
> >      bytes of description we get 1 MByte per languages. If we use po
> >      files in the source (see below), we get 2 MBytes per languages
> >      And all deb packages have only one description with 130 (geziped)
> >      bytes. This make 10 MByte per languages. If we store the
> >      description as po file, we will use 20 MByte per languges.
> >      11/22 MByte per languages, with only 10 languages we will get
> >      110/220 MBytes.

> Hm, this sounds a lot, but note that relative to the complete archive
> size, it's only an increase of about 1%. A well-invested way of using
> this disc space, IMHO.

Agreed.  Spending 1% archive space for the benefit of the 80%+ of our userbase
who doesn't speak English natively is not prohibitive.

> I think it's very important to have the translations in the *source*
> package.

Also agreed.

> For the binary package, I don't know... - Gnome and KDE do include all
> translations, and I think it's easier to handle. Additionally, disc
> space is really cheap these days, so maybe it would be better just to
> include all the descriptions, too.

I think it does belong in the binary package; if not, I'm not sure why we
would want it in the source package at all.  I believe translated descriptions
have just as much reason for inclusion in the binary package's control file
(or in a functional equivalent) as the rest of the informational stuff that's
in there.

If translated Description: fields in binary packages are not important, then
why do we currently have the untranslated Description: in the control file?

Steve Langasek
postmodern programmer



Reply to: