[ENH] [Babel] Screening tool

Daniel Vainsencher danielv at netvision.net.il
Sat Oct 18 00:09:00 UTC 2003


I tend to agree that the implicit translation is a reasonable way to go
for now. What parts does this solution have, and which need to be in the
base image, as opposed to packages? 

Daniel

Andreas Raab <andreas.raab at gmx.de> wrote:
> Hi Diego,
> 
> Nice summary. Thanks!
> 
> Cheers,
>   - Andreas
> 
> > -----Original Message-----
> > From: squeak-dev-bounces at lists.squeakfoundation.org 
> > [mailto:squeak-dev-bounces at lists.squeakfoundation.org] On 
> > Behalf Of Diego Gomez Deck
> > Sent: Friday, October 17, 2003 2:52 PM
> > To: Squeak developers list
> > Subject: [ENH] [Babel] Screening tool
> > 
> > 
> > Hi folks...
> > 
> > Andreas and me spend some days talking about Babel and implicit vs.
> > explicit string literals translations.
> > 
> > (If somebody is interested in the thread I can send it by private
> > email).
> > 
> > We agreed on some points:
> > 
> > 1) Translation in the widgets make no sense at all.  The only 
> > reasonable
> > argument to translate in the widgets is the option to 
> > translated without
> > modifying the model sources and, to get this goal, we don't need to
> > translate in the widgets.
> > 
> > 2) To translate in the model we have 2 options: Implicit and 
> > Explicit. 
> > Explicit means send message #translate to every visible string in the
> > image and Implicit means get (and translate) the string without
> > modifying the source.  Both model has benefits and drawbacks.
> > 
> > 3) We talk about delaying the final decision using the 
> > Implicit model. 
> > Putting all the information in the tool used to tag the strings (The
> > Screening Tool) is the more conservative decision for today because we
> > can translate the image without changing so much the sources 
> > and when we
> > get more experience we can decide to continue with the 
> > Implicit model or
> > to switch to the Explicit one.  In the case we decide to go with the
> > explicit model we can use the same Screening Tool to insert the
> > #translated message all over the image.
> > 
> > Here I'm pasting the email I received from Andreas with the list of
> > steps to try the screening tool:
> > 
> > 
> > -------------------------------------------------------------------
> > -------------------------------------------------------------------
> > 
> > 
> >        De: 
> > Andreas Raab
> > <andreas.raab at gmx.de>
> >      Para: 
> > 'Diego Gomez
> > Deck'
> > <DiegoGomezDeck at ConsultAr.com>
> >    Asunto: 
> > RE: Squeak
> > list et al
> >     Fecha: 
> > Sun, 12 Oct
> > 2003
> > 18:05:10
> > +0200
> > 
> > Hi Diego,
> > 
> > Attached is a first version of the screening tool to get an 
> > idea what it
> > may
> > feel like. To use it, load the LocalizationInfo.cs into your 
> > system and
> > open
> > the tool from the world menu.
> > 
> > The screening tool has the structure of your system to the left and a
> > code
> > pane to the right. As you expand the tree on the left (use the cursor
> > keys
> > for efficiency!) you are able to dive down into the classes, 
> > methods and
> > individual literal strings of that method.
> > 
> > In order to flag a string for localization, just hit space (this will
> > toggle
> > through "[+] - translate", "[ ] - do not translate" and "[?] - I don't
> > know"). In addition the context menu provides a few global 
> > actions that
> > you
> > can use. For example, the way I typically use it is to keep hitting
> > cursor-right until I find a string, hit space and keep going until I
> > have
> > all the guys I think should be translated and then just "exclude the
> > undefined" strings.
> > 
> > Once you are done (with either class, category, or package) 
> > you can use
> > the
> > context menu to save the localization info for the unit of work you've
> > been
> > working on. This will spit out a ".lif" file which you can load into
> > another
> > system (just use the file list). The file contains all of the info
> > required
> > to tag the strings we want to translate at runtime.
> > 
> > I have also attached an example LIF file for the world menu to
> > demonstrate
> > the effect. In order to test this, please do exactly what I am
> > describing in
> > the following:
> > * Get a clean 3.6 image
> > * Load the localization info cs
> > * Load Babel-dgd.cs
> > * Load Babel-FileListServices-dgd.cs
> > [NOTE: Do NOT load the "complete translations" - this would spoil the
> > effect]
> > * Install "TheWorldMenu.lif" from the file list
> > * Install "Spanish.translations" (or any other translation you have)
> > from
> > the file list
> > * Set the language to spanish (or the one you loaded)
> > 
> > Now open the world menu - you will see it's still in english. That's
> > because
> > we haven't installed the translations yet. Let's install them:
> > 
> > LiteralStringLocalizationManager install: Language defaultLanguage
> > 
> > Open the world menu again - now it's all in spanish. To get 
> > back to the
> > previous (untranslated) version evaluate
> > 
> > LiteralStringLocalizationManager install: nil.
> > 
> > Open the world menu again - it's back to english.
> > 
> > Okay, that's about it for now.
> > 
> > Cheers,
> >   - Andreas
> > 
> > 
> > -------------------------------------------------------------------
> > -------------------------------------------------------------------
> > 
> > 
> > Comments are welcome!
> > 
> > 
> > -- 
> > Diego Gomez Deck
> > http://www.small-land.org
> >



More information about the Squeak-dev mailing list