Several i18n questions

Yoshiki Ohshima yoshiki at squeakland.org
Wed Jul 20 13:42:24 UTC 2005


  Hello,

> - as i understand the way the i18n process works, the "translated" 
> message is send to strings to translate them and i guess there is 
> somewhere dictionaries for each languages with the strings as keys. It 
> works well for real sentences, but with single words, problems could 
> occurs, because depending on the context a word could have several 
> meanings. For example, the english word : "win" could be the verb or 
> the noun and in french the translation will be different. And as the 
> translated strings are shared among all the code, how could we escape 
> from this kind of problems ? Do we need something like a context (i.e 
> Class + method where the translation occurs) ?

  Yes, we do.

> - it's sometimes difficult to know where and when the translation 
> process occurs inside the code. The translated message is sometimes 
> directly applied after the string instance, sometimes in specific 
> methods.

  The rule of thumb I thought was to apply #translated to the string
literals, but the exception is everywhere now.

> - right now, there is only one file for all the translations of a 
> language, but what happened for package that are not part of the kernel 
> of Squeak ? Do we need to have a translations files for each package 
> (outside from the code) ? when a package is removed from the image, do 
> we have to remove also the translations ?

  Yes, this is an issue that people was aware of even before current
"Babel" translation framework.  The timing wasn't quite right to
implement.  We definitely should have better thing.

-- Yoshiki



More information about the Squeak-dev mailing list