Re: Reorganization of the translation files

Lists: pgsql-hackers
From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Reorganization of the translation files
Date: 2004-11-09 16:30:09
Message-ID: 200411091730.09985.peter_e@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

I was thinking about organizing the translation files in a more efficient
manner. (not for 8.0, obviously)

Right now we have one PO file for each combination of program (or library) and
language. The idea was that one only has to install the translation files
for the PostgreSQL pieces that one actually uses on a particular system, and
this is basically how it has worked out.

Nevertheless, I think it may make sense to provide only a single PO file for
each language, covering the entire PostgreSQL source tree. Because if you
think about it, the above space-saving scheme actually wastes space. If you
install a PostgreSQL server package today, you install 14 translations, 93%
of which you don't need. On the other hand, if we only provided one PO file
per language and encouraged packagers to create a separate package for each
language (say, postgresql-i18n-de), then a client-only installation wastes
more like 60%, and a server installation (which usually includes the clients)
wastes nothing. Moreover, English speakers have the option to install no
translations at all.

Now, the above can be accomplished by realigning the packaging without
changing the PO files, but if we were to do that, then there is little reason
to keep separate files. Moreover, having one big file would have several
other advantages: It would save space because many strings are duplicated in
several PO files. It would make life easier on those installing the
translations. I suspect it would also make life easier for translators. And
it would be easier to release translation updates or new translations between
code releases. And it would easily solve issues like translatable strings
appearing in the pgport library, which has no makefile structure to support
translations (which would be a waste for like 5 strings), and no run-time
support either.

Comments?

--
Peter Eisentraut
http://developer.postgresql.org/~petere/


From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Reorganization of the translation files
Date: 2004-11-09 17:00:46
Message-ID: 20725.1100019646@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> I was thinking about organizing the translation files in a more efficient
> manner. (not for 8.0, obviously)
> [snip]
> And it would easily solve issues like translatable strings
> appearing in the pgport library, which has no makefile structure to support
> translations (which would be a waste for like 5 strings), and no run-time
> support either.

Sounds like a win to me on that grounds alone; but probably the
translators need to have the biggest say here, since they'll be affected
the most.

One question is whether the gettext code is markedly less efficient when
accessing a large .mo file than a small one; if so, the consolidation
would probably hurt client performance.

regards, tom lane


From: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Reorganization of the translation files
Date: 2004-11-11 01:29:07
Message-ID: 20041111012907.GA15409@surnet.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Tue, Nov 09, 2004 at 12:00:46PM -0500, Tom Lane wrote:
> Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> > I was thinking about organizing the translation files in a more efficient
> > manner. (not for 8.0, obviously)
> > [snip]
> > And it would easily solve issues like translatable strings
> > appearing in the pgport library, which has no makefile structure to support
> > translations (which would be a waste for like 5 strings), and no run-time
> > support either.
>
> Sounds like a win to me on that grounds alone; but probably the
> translators need to have the biggest say here, since they'll be affected
> the most.

The biggest downside I see is the long execution time for msgmerge.
I can live with that, especially if it will save me translating "out of
memory" six or seven times.

The other downside is that the cool status table will be reduced to one
line. I can live with that too ...

--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"La tristeza es un muro entre dos jardines" (Khalil Gibran)


From: Aleksander Kmetec <aleksander(dot)kmetec(at)intera(dot)si>
To: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Reorganization of the translation files
Date: 2004-11-11 02:51:24
Message-ID: 4192D3AC.1030003@intera.si
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Alvaro Herrera wrote:
>
> The biggest downside I see is the long execution time for msgmerge.
> I can live with that, especially if it will save me translating "out of
> memory" six or seven times.

I'm using poedit which can replace empty translations with previous
translated values for the same/similar strings. This can save you some
time when translating common errors and command-line options;
unfotunately, importing strings from other projects (kde, gnome, ...)
doesn't help much. :(

Regards,
Aleksander


From: Aleksander Kmetec <aleksander(dot)kmetec(at)intera(dot)si>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Reorganization of the translation files
Date: 2004-11-11 03:08:07
Message-ID: 4192D797.504@intera.si
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

I'm not sure about other translators, but I'd like to see two files: one
for the backend and one for the utilities.

Translating strings can be a slow and tedious process and completing
them all at the same time is not likely. With two files you can choose
to translate the tools during one development cycle and the backend
during the next one, while keeping some overview over your progress at
the same time.

Regards,
Aleksander