[squeak-dev] Squeak and i18n

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[squeak-dev] Squeak and i18n

muyuubyou
I haven't posted to the list in a few years but I think this is a very important topic.

First of all, thanks to all developers and contributors for all the effort. The improvement in the last 2 years has been nothing short of astonishing.

One thing that I still find lacking is squeak's internationalization support. How is it there are no official images in other languages? How about font packages for non-romanized alphabets? Given the amount of international involvement there should at least be a version with some sort of Unicode font (I realize that full Unicode fonts are huge). This is a show stopper for a lot of people these days.

How is Squeak-jp working? because the Japanese kids will struggle to play with etoys in English.

I've automated the localization of several software packages and I could give a hand with this. We need some sort of extractor-injector of text strings.

A propose using a CSV file in UTF-8 with the following information, for every language:

TARGET_LANGUAGE_CODE.csv (for instance, en-us, en-uk, en-ca, fr-fr, fr-ca, es-es, es-arg, es-uy, es-co, zh-tw, ru-ru, ru-ua, ua, jp, de-aut, de-ger, etc...)
--------------------------------------------------

contents of en-us.csv:
string code(placeholder),  string, context
STR_WORLD_MENU_TITLE,World,WORLD_MENU
STR_INSPECT_MENU_INSPECT,Inspect,INSPECT_MENU
[...]

contents of es-es.csv:
string code(placeholder),  string, context
STR_WORLD_MENU_TITLE,Mundo,WORLD_MENU
[...]

contents of jp.csv:
string code(placeholder),  string, context
STR_WORLD_MENU_TITLE,世界,WORLD_MENU
[...]

contents of ru-ru.csv:
string code(placeholder),  string, context
STR_WORLD_MENU_TITLE,мир,WORLD_MENU
[...]


... and so on.

Or whatever structure you like, just so you can sort by "context", "string" or "placeholder" in OpenOffice, Excel or whatever sorts CSV files.

Sorry for the boring post.


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Squeak and i18n

Bert Freudenberg
On 27.05.2008, at 12:11, muyuubyou wrote:

> I haven't posted to the list in a few years but I think this is a  
> very important topic.
>
> First of all, thanks to all developers and contributors for all the  
> effort. The improvement in the last 2 years has been nothing short  
> of astonishing.

Indeed :)

> One thing that I still find lacking is squeak's internationalization  
> support.

That improved as well, considerably so.

> How is it there are no official images in other languages?

Because it's simpler to have just one image. The Etoys image uses the  
LocalePlugin so it can switch to the right locale on startup.

> How about font packages for non-romanized alphabets? Given the  
> amount of international involvement there should at least be a  
> version with some sort of Unicode font (I realize that full Unicode  
> fonts are huge). This is a show stopper for a lot of people these  
> days.

The system supports unicode (that was the biggie in 3.8). You can use  
Freetype fonts now. There is experimental Pango support as well.

> How is Squeak-jp working? because the Japanese kids will struggle to  
> play with etoys in English.

It downloads a Japanese font set. Etoys in Japanese is fine.

> I've automated the localization of several software packages and I  
> could give a hand with this. We need some sort of extractor-injector  
> of text strings.

We do have that. See class GetText* classes in the OLPC Etoys image.

> A propose using a CSV file in UTF-8 with the following information,  
> for every language:


Etoys uses the gettext format which is an open-source standard:

        http://www.gnu.org/software/gettext/

Translation of Etoys and the base system is ongoing:

        https://dev.laptop.org/translate/projects/etoys/

There are already 4312 translatable phrases, and we're adding more.

This could be a nice basis for the squeak.org version, too. It just  
takes somebody to grab the code.

- Bert -



Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Squeak and i18n

muyuubyou
Thank you Bert for your reply.

I've been looking at the link you posted
https://dev.laptop.org/translate/projects/etoys/

The PO format from GNU gettext is fine, but in the etoys repositories they are not using context fields, only comments and sparsely (I've checked French, Spanish, Japanese and Russian).

I have some questions, maybe someone in the list can reply.

- Are there no placeholders/identifiers? no contexts? for a big project like this is looks like the context information is insufficient. You can very possibly have the same string translated in different ways depending on the context and the reverse is also true (not so much in German which tends to be very specific :) ). Well, this method of doing it with online contributions and no contexts would be very good for an application with a few pop-up menus etc, but I think it will be very difficult to keep this well managed and up to professional standards using only this information. I've downloaded a few PO files, I might be missing something.

- Is there some way to separate etoys from just the base image (and separated packages)? The amount of languages makes it very difficult to maintain huge monolithic tables like those, in a 1-per-language basis.

- Is there an automatic way to extract/inject those translations from an image and see the results? looks like the OLPC people are doing it their own way and manually (possibly compiling the whole thing?), which is fine for them I guess :) but in order to have it updated and well supported in squeak base image it has to be streamlined. I think this is very, very important for the future of Squeak. Even more so if we make it to main repositories from the likes of Debian, Fedora or Ubuntu.

In short, I was looking for a way to translate the base image in a centralized manner, with scripts to obtain immediate results.


2008/5/27 Bert Freudenberg <[hidden email]>:
On 27.05.2008, at 12:11, muyuubyou wrote:

I haven't posted to the list in a few years but I think this is a very important topic.

First of all, thanks to all developers and contributors for all the effort. The improvement in the last 2 years has been nothing short of astonishing.

Indeed :)


One thing that I still find lacking is squeak's internationalization support.

That improved as well, considerably so.


How is it there are no official images in other languages?

Because it's simpler to have just one image. The Etoys image uses the LocalePlugin so it can switch to the right locale on startup.


How about font packages for non-romanized alphabets? Given the amount of international involvement there should at least be a version with some sort of Unicode font (I realize that full Unicode fonts are huge). This is a show stopper for a lot of people these days.

The system supports unicode (that was the biggie in 3.8). You can use Freetype fonts now. There is experimental Pango support as well.


How is Squeak-jp working? because the Japanese kids will struggle to play with etoys in English.

It downloads a Japanese font set. Etoys in Japanese is fine.


I've automated the localization of several software packages and I could give a hand with this. We need some sort of extractor-injector of text strings.

We do have that. See class GetText* classes in the OLPC Etoys image.


A propose using a CSV file in UTF-8 with the following information, for every language:


Etoys uses the gettext format which is an open-source standard:

       http://www.gnu.org/software/gettext/

Translation of Etoys and the base system is ongoing:

       https://dev.laptop.org/translate/projects/etoys/

There are already 4312 translatable phrases, and we're adding more.

This could be a nice basis for the squeak.org version, too. It just takes somebody to grab the code.

- Bert -