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


_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Open Source Applications Foundation "chandler-dev" mailing list
http://lists.osafoundation.org/mailman/listinfo/chandler-dev

Reply via email to