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