[Zope-CMF] translation of CMF 1.1. Request for comments

Robert Rottermann redCOR AG robert@redcor.ch
Fri, 22 Jun 2001 10:40:06 +0200


Hi Joachim,

I did write once a rather versatile translation system that we used to
translate our applications written in a mixture of languages from German to
other European languages. It uses a sentence by sentence translating scheme.
There are some 5000 sentence in our tables. The size of the application is
something like Zope and CMF combined.
Looking at the count of usage of each string-to-translate I see that rather
few of them are used often.

In CMF this might be different since it tends to duplicate screens for
similar tasks.
This, to my mind, is a CMF/Zope design flaw which should not be attempted to
be circumvented by the translating facilities but on the Zope core . As I
understand ZPT it could provide a solution.

My experience with translation of applications (which spans 10 years) shows
that the crucial part of doing translation of a moving target (as Zope/CMF
is one) is that we can translate an updated source file AUTOMATICALLY to all
the languages that happen to exist for it.
Of course everything that is new will not be translated. However we must be
able to guarante that a BUG FIXED in on language is ALSO FIXED IN ALL
OTHERS. (if it was not a translation related problem)

As I mentioned in my former post my proposal does not provide for this
automatic translation, but since it allows for diffs against the original it
should make the task at least easier.

Next to the fact that the we must be able to synchronise easily there is a
second thing to consider. Screens tend to ask for translation as a whole.
You often can not translate pieces of it isolated from others.

I might not yet have looked into it good enough, but I believe that DTML
should not be translated with ZBabel. However everything like the content of
action boxes where the translated string is not part of the environment it
is displayed in but describes a task at hand ZBabel for sure is very well
suited.

Robert


----- Original Message -----
From: "Joachim Werner" <joe@iuveno-net.de>
To: "Robert Rottermann redCOR AG" <robert@redcor.ch>; <zope-cmf@zope.org>
Sent: Friday, June 22, 2001 12:37 AM
Subject: Re: [Zope-CMF] translation of CMF 1.1. Request for comments


> > There are several other attempts to be found on the Zope page how to
solve
> > the translation task. They seem to focus on a sentence by sentence
> > translation which is, to my mind, much more complicated than to
translate
> a
> > whole file.
>
> A sentence-by-sentence or "phrase-by-phrase" translation system has one
> important advantage: You just have to translate a word or phrase once. The
> only situation where this might not be a good idea is if you have
identical
> phrases with different meanings (e.g. "Sun" for the computer company,
"Sun"
> for the star, and "Sun" for the abbreviated form of "Sunday"), but that
can
> be handled using different labels like "Sun_weekday".
>
> We at iuveno have taken ZBabel from Andrew Milton and improved it a bit.
> Right now Stephan Richter is posting the new version that does not need an
> SQL database backend any more.
>
> ZBabel has some really advanced features, e.g. you can add "ZBabel
objects"
> that behave like a single image or file, but in fact are containers that
> contain versions in different languages (e.g. for GIF text buttons).
>
> You can even translate phrases that contain DTML variables and get the
> variables in the right order. And you can localize date formats etc.
>
> We also had a try to put the translation engine into the "var" tag. It
> worked pefectly, but you get massive problems with recursion because
> dtml-var not only displays variables but also methods that contain of
> methods that use variables etc. ... (It is still in the code, but you have
> uncomment it. Do so and f* up your Zope within seconds ;-))
>
> > Doing the translation as I propose it would be relatively easy to check
> for
> > changes when files are updated. Since the original file is still part of
> the
> > _int copy we can split it of and diff it against the updated dtml file.
> > Although this does not provide for automatic merging of code changes
into
> > the translated parts it should make the process much easier.
>
> ZBabel has a nice feature for getting the translations merged into an
> existing system: You just distribute your files as usual and in addition
to
> that you make a dump of your translation database ("Babel Tower") and
import
> it to the target system. This way not only the new files are translated,
but
> all translated phrases that are used in them can be reused somewhere else
> ...
>
> If you find bugs or look for additional features in ZBabel, feel free to
> contact us!
> (mailto: srichter@iuveno-net.de)
>
> The newest version is here:
>
http://www.zope.org/Members/srichter/Products/ZBabel/ZBabel-2-0-0a2.tgz/view
>
> Cheers
>
> Joachim
>
>
>
>
>
>
> _______________________________________________
> Zope-CMF maillist  -  Zope-CMF@zope.org
> http://lists.zope.org/mailman/listinfo/zope-cmf
>
> See http://www.zope.org/Products/PTK/Tracker for bug reports and feature
requests
>