About squeak and etoys internationalization - possibly also feedback

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

About squeak and etoys internationalization - possibly also feedback

Paulo César Pereira de Andrade
  Hi,

  First let me tell that other than "looking" at squeak one or two
times in the last 10 years, I only "really" used it from late friday
up to yesterday.

  I made this screenshot http://img151.imageshack.us/img151/7/squeak1.png
of a previous pt_BR translated version I did, but after that screenshot
I corrected several of them, and translated over 1500 strings, took some
time to figure out myself on how to get to the proper tools, etc. I hope
to make a localized official mandriva package soonish...
[If you want to check the latest image, and 2010.0 backports packages,
 for classmate, check kenobi.mandriva.com/~pcpa]

  The problem is that, probably like etoys, if one does not open all
menus and interfaces, the strings will not be available to translation.

  Why I did it: Mandriva needs to provide an image for a government
bidding for classmate pcs, and I was asked to provide some help in
the "squeak" requested item. All I was shown was the pt_PT squeaklandia
and a "SqueakPlugin.image" that apparently is used by one usual
bidding winner (the request is for fully translated programs, and
that image is basically everything removed from sight).

  Hope this information is useful to some extend :-) Most important
one should be about suggesting some kind of automated procedure to
extract text for translators of Etoys, so that, all actual strings
are made available in the *.po files. Right now, for a "first timer"
like me, it is a if almost 90% of the interface were in english.

Thanks,
Paulo


Reply | Threaded
Open this post in threaded view
|

Re: About squeak and etoys internationalization - possibly also feedback

Jecel Assumpcao Jr
Paulo,

translation in Squeak has a very long and complicated history. The first
thing you must notice is that often the Etoys layer is treated as a
separate project from Squeak itself. Very early on a really crude
translation system was included in Etoys - it was basically just a
single method that would set up some arrays inside the image matching
the equivalent in English and in some other language. Paulo Drummond
used this resouce to translate all Etoys tiles to Brazilian Portuguese
back in 2005.

What I described above was exclusively for Etoys and didn't work for the
rest of Squeak. So Diego Gomez Deck created a much more sophisiticated
system which included special browsers and some new runtime methods. He
made it so his new system was compatible with the old Etoys one and it
was easy to upgrade Etoys to take advantage of the new features. This
system was officially adopted in Squeak 3.8. Looking at your
screenshots, my impression is that this is what you are using.

When Etoys became an important part of the OLPC project, it was decided
that the translation infrastructure used by the other OLPC subprojects,
Pootle, should be adopted by Etoys as well. The necessary changes to the
code were made and the Pootle project was created:

http://translate.sugarlabs.org/projects/etoys_new/

Most of the old translations were moved over to the new system (in 2006,
I think) and all work has happened there since.

There are many details which I don't know:

- are the new translations Etoys-only or are Smalltalk level stuff
included?
- does Squeak 4.1 include only Diego's system or has the Pootle code
been merged?

I hope that the people more directly involved with this will reply to
you. Most translation discussions happen in the etoys-dev list rather
than here, however.

-- Jecel


Reply | Threaded
Open this post in threaded view
|

Re: About squeak and etoys internationalization - possibly also feedback

Bert Freudenberg
In reply to this post by Paulo César Pereira de Andrade

On 11.10.2010, at 14:05, Jecel Assumpcao Jr. wrote:

> Paulo,
>
> translation in Squeak has a very long and complicated history. The first
> thing you must notice is that often the Etoys layer is treated as a
> separate project from Squeak itself. Very early on a really crude
> translation system was included in Etoys - it was basically just a
> single method that would set up some arrays inside the image matching
> the equivalent in English and in some other language. Paulo Drummond
> used this resouce to translate all Etoys tiles to Brazilian Portuguese
> back in 2005.
>
> What I described above was exclusively for Etoys and didn't work for the
> rest of Squeak. So Diego Gomez Deck created a much more sophisiticated
> system which included special browsers and some new runtime methods. He
> made it so his new system was compatible with the old Etoys one and it
> was easy to upgrade Etoys to take advantage of the new features. This
> system was officially adopted in Squeak 3.8. Looking at your
> screenshots, my impression is that this is what you are using.
>
> When Etoys became an important part of the OLPC project, it was decided
> that the translation infrastructure used by the other OLPC subprojects,
> Pootle, should be adopted by Etoys as well. The necessary changes to the
> code were made and the Pootle project was created:
>
> http://translate.sugarlabs.org/projects/etoys_new/
>
> Most of the old translations were moved over to the new system (in 2006,
> I think) and all work has happened there since.
>
> There are many details which I don't know:
>
> - are the new translations Etoys-only or are Smalltalk level stuff
> included?

It includes Smalltalk tools.

> - does Squeak 4.1 include only Diego's system or has the Pootle code
> been merged?

The new system uses GNU gettext external translation files (*.po). It was implemented by Korakurider.

Hilaire Fernandes made a package for Pharo from the Etoys code I think. That might be a good base for getting it into Squeak.

- Bert -

> I hope that the people more directly involved with this will reply to
> you. Most translation discussions happen in the etoys-dev list rather
> than here, however.
>
> -- Jecel
>
>



Reply | Threaded
Open this post in threaded view
|

Re: About squeak and etoys internationalization - possibly also feedback

Yoshiki Ohshima-2
In reply to this post by Paulo César Pereira de Andrade
At Mon, 11 Oct 2010 11:48:43 -0300,
Paulo César Pereira de Andrade wrote:

>
>   Hi,
>
>   First let me tell that other than "looking" at squeak one or two
> times in the last 10 years, I only "really" used it from late friday
> up to yesterday.
>
>   I made this screenshot http://img151.imageshack.us/img151/7/squeak1.png
> of a previous pt_BR translated version I did, but after that screenshot
> I corrected several of them, and translated over 1500 strings, took some
> time to figure out myself on how to get to the proper tools, etc. I hope
> to make a localized official mandriva package soonish...
> [If you want to check the latest image, and 2010.0 backports packages,
>  for classmate, check kenobi.mandriva.com/~pcpa]

  Cool!

  Umezawa-san has a pretty complete Japanized Squeak 4.1 image (a few
months back):

ftp://swikis.ddo.jp/SqueakDevJa/images/Squeak4.1-ja-all-in-one.zip

It should be a good starting point to look at all recent phrases in
the trunk image.

-- Yoshiki

Reply | Threaded
Open this post in threaded view
|

Re: About squeak and etoys internationalization - possibly also feedback

Paulo César Pereira de Andrade
In reply to this post by Bert Freudenberg
Bert Freudenberg wrote:

>
> On 11.10.2010, at 14:05, Jecel Assumpcao Jr. wrote:
>
>> Paulo,
>>
>> translation in Squeak has a very long and complicated history. The first
>> thing you must notice is that often the Etoys layer is treated as a
>> separate project from Squeak itself. Very early on a really crude
>> translation system was included in Etoys - it was basically just a
>> single method that would set up some arrays inside the image matching
>> the equivalent in English and in some other language. Paulo Drummond
>> used this resouce to translate all Etoys tiles to Brazilian Portuguese
>> back in 2005.

  Yes, I tried to follow the links in the wiki, but got completely
lost... I tried the procedure I found googling, and tried
http://wiki.squeak.org/squeak/3282
but it only gives a window with a backtrace asking to try to revert
the method/change, and requires restarting squeak.

  I found references to smalltack brazilian groups, but all liks
appears dead...

>> What I described above was exclusively for Etoys and didn't work for the
>> rest of Squeak. So Diego Gomez Deck created a much more sophisiticated
>> system which included special browsers and some new runtime methods. He
>> made it so his new system was compatible with the old Etoys one and it
>> was easy to upgrade Etoys to take advantage of the new features. This
>> system was officially adopted in Squeak 3.8. Looking at your
>> screenshots, my impression is that this is what you are using.

  I think it is. I confess that I learned 99.99% of what I know about
squeak in the weekend, and pretty much all I know about smalltalk
today :-) To translate the remaining strings, basically what I did
was:
1. go to NaturalLanguageTranslator
2. "add" the missing string, for example, the "Search: " string
   in the top menu bar
3. use the "where (E)" option
4. "patch" the code, e.g, pseudo patch:
[...]
- addMorphBack: (StringMorph new contents: 'Search: ');
+ addMorphBack: (StringMorph new contents: 'Search: ' translated);
[...]
5. Alt-s to save
6. Provide the actual translation, may need to close/hide menu/etc
   to get it to actually load the translated text

[Probably the above procedure is not correct, and maybe could even
damage the image..., maybe need to use the "Test Runner" before,
but I am still learning a lot...]

  Most other translations "appear" in the interface when opening the
related popup/interface. This is why I suggested, but only as a
"feedback" to check the procedure to provide strings for translator,
because for example, all Etoys tutorials are in english, what may
not be easy to non english speaking children :-)

>> When Etoys became an important part of the OLPC project, it was decided
>> that the translation infrastructure used by the other OLPC subprojects,
>> Pootle, should be adopted by Etoys as well. The necessary changes to the
>> code were made and the Pootle project was created:
>>
>> http://translate.sugarlabs.org/projects/etoys_new/

  Thanks, I did not know about it. But I updated the mandriva
squeak-vm and squeak-image over the weekend to the latest official
release, and also the etoys package. The etoys package I patched the
build to not make a svn checkout during build, as the build system
runs in a "protected" chroot, so, I added the "Content" directory
as an extra source tarball.

>> Most of the old translations were moved over to the new system (in 2006,
>> I think) and all work has happened there since.
>>
>> There are many details which I don't know:
>>
>> - are the new translations Etoys-only or are Smalltalk level stuff
>> included?
>
> It includes Smalltalk tools.
>
>> - does Squeak 4.1 include only Diego's system or has the Pootle code
>> been merged?
>
> The new system uses GNU gettext external translation files (*.po). It was
> implemented by Korakurider.
>
> Hilaire Fernandes made a package for Pharo from the Etoys code I think.
> That might be a good base for getting it into Squeak.
>
> - Bert -
>
>> I hope that the people more directly involved with this will reply to
>> you. Most translation discussions happen in the etoys-dev list rather
>> than here, however.
>>
>> -- Jecel

  I will try to maintain the squeak package up to date in Mandriva;
actually, I am working on a personal project that has a virtual machine,
etc, but is more of a C/C++ language expected to be used for simulations,
etc, and I did significant patching and am still doing, to gnu
lightning (http://github.com/pcpa/lightning), that is used by gnu
smalltalk, so, I should be ashamed to take so long to learn smalltalk :-)

  Also, probably at least at first, I will try to get a fully translated
squeak in our classmate image, and get some basic tutorials translated,
otherwise the people (I believe usually children with a classmate :-)
that can actually benefit from it may never properly use it; needs an
easy initialization/learning procedure to get used to the interface
and understand what he/she is supposed to do :-)

Thanks again,
Paulo


Reply | Threaded
Open this post in threaded view
|

Re: About squeak and etoys internationalization - possibly also feedback

Bert Freudenberg

On 11.10.2010, at 15:40, Paulo César Pereira de Andrade wrote:

>
>>> When Etoys became an important part of the OLPC project, it was decided
>>> that the translation infrastructure used by the other OLPC subprojects,
>>> Pootle, should be adopted by Etoys as well. The necessary changes to the
>>> code were made and the Pootle project was created:
>>>
>>> http://translate.sugarlabs.org/projects/etoys_new/
>
>  Thanks, I did not know about it. But I updated the mandriva
> squeak-vm and squeak-image over the weekend to the latest official
> release, and also the etoys package. The etoys package I patched the
> build to not make a svn checkout during build, as the build system
> runs in a "protected" chroot, so, I added the "Content" directory
> as an extra source tarball.

Well, official Etoys tarballs have Content included:

        http://download.sugarlabs.org/sources/sucrose/glucose/etoys/

- Bert -