Proposed PEP for a Conditional Expression
Alex Martelli
aleaxit at yahoo.com
Tue Sep 11 04:47:37 EDT 2001
"Christian Tanzer" <tanzer at swing.co.at> writes:
...
"""
> print "%(plur_verb number 'Found') %(plur_noun number 'error')s" % neater
>
> with the parser in __getitem__ looking for spaces and using
> them, if found, to recognize formatting keywords such as
> 'plur_verb' -- makes for easier parsing AND for vastly easier
> i18n of messages (neater itself would of course use gettext
> as needed on the meaning-carrying words such as 'error' or
> 'Found':-).
Well, I'd use the contents of the interpolated string as key to get
the translation (via gettext or otherwise). After all, different
languages might have totally different rules how to adapt a sentence
to the context supplied by `neater`.
"""
In my experience that doesn't work well when the messages
include numbers that can vary all over the place, like,
here, the number of errors -- the i18n db gets overwhelmed
by almost-identical messages. Yes, working by fragments
isn't quite as satisfactory -- here, I'm forcing the
verb to come before the direct object, for example, and
that might not be ideal for some languages -- that would
need some extra tricks.
Alex
More information about the Python-list
mailing list