adonthell-devel
[Top][All Lists]
Advanced

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

Re: [Adonthell-devel] i18n progress


From: Alexandre Courbot
Subject: Re: [Adonthell-devel] i18n progress
Date: 16 Mar 2002 13:10:25 +0100

> Back then I have said that the translation of the dialogues happens on
> C++ side, so that we only have to make calls to gettext when a string is
> actually displayed. That means, we need to add gettext and friends to
> the engine.

Where would it be added? Don't forget gettext doesn't only apply to
dialogs, but also to menus, and so on... It should therefore be globally
accessible.

Python offers a gettext module too, and since all our text management
will probably happen on Python side, we could also use it. But I prefer
having our own gettext layer in the engine, as the user's Python might
not have gettext support compiled in.

> I've done that yesterday. However, the message catalogue
> comes with the data, not the engine. That means first of all the we must
> determine the catalogue to use at runtime (no problem), but it also
> means we'll have to add gettext support to the data. At least there
> needs to be po/ directory with the different catalogue sources. Not that
> this would be a problem, it's just something that didn't occur to me
> earlier.

Doesn't looks like a problem - on the contrary, it's just the way it
should be: the translations with the data package.

> The next problem I faced was how to test whether stuff works. The new
> dialogue engine isn't ready yet,

Don't you use the same one as Waste's Edge? Or have you improved stuff
again? :) I thought you were only rewriting dlgedit.

> and even if it was, there's no gui to
> display something. So I decided to add a "preview" mode to dlgedit. The
> problem with the translation is that the translator gets a list of
> strings that are out of context. So after each string is translated,
> they might no longer fit together in the dialogue. That's where the
> preview mode comes in. Dlgedit now has the option to load a catalogue at
> runtime and then displays all text using the translation provided in the
> catalogue. That way, inconsistencies can be easily spotted and corrected
> in the .po file. Of course, while in preview mode, no changes can be
> made to the dialogue itself, which is still in English after all.

Does it mean that translations are done within dlgedit? That would be
great for user-friendlyness, but in this case each dialog would be
contained in it's own catalog, right? Wasn't our goal to only have one
catalog per game, which contains all the strings, so it is loaded once
at game start? Loading a catalog each time a dialog is run might be
heavy, I fear - but I'm not very aware of gettext, so I suppose you know
what you are doing.

Keep up the good work! :)
Alex.
-- 
http://www.gnurou.org




reply via email to

[Prev in Thread] Current Thread [Next in Thread]