[Chandler-dev] Localization Feature update

Brian Kirsch bkirsch at osafoundation.org
Fri Sep 21 13:39:34 PDT 2007


Hello,
Just wanted to alert the team to a new command line feature for  
testing UI Layout expansion.

Passing the --expand argument on the command line to Chandler  
followed by a value between
1 and 100 will result in the Chandler Translation service expanding  
localized strings by the
percentage amount specified.

So for example, passing the command line argument --expand 100  will  
result in the
I18nManager.getText method returning u"Outgoing Mail------------->"
for the  translation string _(u"Outgoing Mail").

This is a 100% percent expansion of the 13 characters in "Outgoing  
Mail" plus a ">".

So why is this useful?

Well, the length of strings when localized can greatly exceed English  
lengths.

German is the classic example of this. Using the --expand argument  
tests whether
a particular UI component can correctly render longer word without  
clipping the text.


The current goal for 0.7.1 is that all UI modules in Chandler  
correctly render text in
any supported locale with out clipping the sentence or word.

It does not always have to be pretty for 0.7.1. Trying Chandler with  
--expand 100 (100%)
definitely makes the UI layout much less attractive.

There are four UI areas where Chandler needs to be improved in terms  
of text clipping:


1. The Accounts Dialog - This is the worst offender of clipping  
expanded text. I will be
                                               working on cleaning up  
this dialog over the next week.

2. The Detail View - The Detail View labels such as starts and ends  
are fixed width and
                                      need to be augmented to allow  
expansion.

3. The Chandler Button Bar - The Send button will be clipped off the  
screen if the text
                                                      length of the  
other buttons expands.

4. The startup splash screen - This is the least concerning but with  
--expand 100 some
                                                         of the start  
up elements do clip.


There is also the "test" locale. Starting Chandler with the -l (-- 
locale) test command line
argument results in the I18nManager.getText method returing a (ü): at  
the start of
each translation string.

Why is this useful?

If a string in the UI does not start with (ü): in the test locale,  
then it is not going through
the translation service. This allows a developer to easily spot  
places where he or
she forgot to wrap a translatable string with a  
ChandlerMessageFactory _() method.




-Brian


Brian Kirsch
Internationalization Architect / Mail Service Engineer
Open Source Applications Foundation
543 Howard Street 5th Floor
San Francisco, CA 94105
http://www.osafoundation.org




More information about the chandler-dev mailing list