|
From: Doug F. <dou...@go...> - 2010-07-28 16:53:08
|
Good point, I'll do that.
On Tue, Jul 27, 2010 at 11:41 PM, Norbert Lindenberg ♻ <
nor...@ya...> wrote:
> Hi Doug,
>
> You probably want to specify that the numbers in the offset and in an
> explicit value selector are unlocalized numbers using ASCII digits, U
> +002E as the decimal separator, no grouping separators, and using a
> prefix U+002D to indicate negative values.
>
> Thanks,
> Norbert
>
>
>
> On Jul 27, 2010, at 13:23 , Doug Felt wrote:
>
> > I'd like to propose an extension to the syntax understood by
> > PluralFormat to make it easier to deal with a larger class of
> > messages that vary based on number. For example:
> >
> > format(1): "Wrote xxx.txt."
> > format(2): "Wrote xxx.txt and yyy.txt."
> > format(3): "Wrote xxx.txt, yyy.txt, and one other file."
> > format(7): "Wrote xxx.txt, yyy.txt, and 5 other files."
> >
> > I'm proposing no API changes, this is only a syntax change. An
> > English pattern string for this example would look as follows (line
> > breaks are for clarity):
> >
> > "offset:2
> > =1 {Wrote {FILE_1}.}
> > =2 {Wrote {FILE_1} and {FILE_2}.}
> > one {Wrote {FILE_1}, {FILE_2}, and one other file.}
> > other {Wrote {FILE_1}, {FILE_2}, and # other files.}"
> >
> > There are two new optional syntax elements:
> > - the 'offset:' keyword ("offset:2" above)
> > - the explicit value selector ("=1" and "=2" above)
> >
> > An explicit value selector consists of '=' immediately followed by
> > an decimal or integer number with no intervening space. This
> > identifiues the sub-pattern to use when the PluralFormat is asked to
> > format a particular value. In this example, '1' and '2' have
> > explicit values, and so formatting the values 1 and 2 will result in
> > the sub-patterns preceded by these selectors. When formatting, any
> > explicit value selectors are tested first, before the plural rules
> > are used to generate a plural selector.
> >
> > The 'offset:' keyword is followed by a (decimal or integer) number
> > and then a space. This offset is the amount to subtract from the
> > passed-in value before running the plural rules and performing
> > number substitutions, but after examining the explicit selectors.
> > In this example, the offset value is 2, so if the input value does
> > not match an explicit selector, 2 is subtracted from the input value
> > before passing it to the plural rule and performing any '#'
> > replacements. When formatting the value 3, subtracting the offset
> > results in the value 1, which English plural rules convert to the
> > selector "one". When formatting the value 7, subtracting the offset
> > results in the value 5, which English plural rules convert to the
> > selector "other", and "#" in the result sub-pattern is replaced with
> > "5" (the adjusted value) before it is returned.
> >
> > These extended pattern strings, when embedded in a message format,
> > are more compact and simpler to translate and call than, say,
> > combining a choice format with a plural format, and tweaking the
> > calling code to provide the non-adjusted value to the choice format
> > and the adjusted value to the plural format. Simplifying the
> > calling code also makes it easier to share messages among multiple
> > implementations.
> >
> > Please respond by August 9th.
> >
> > Doug
> > <ATT00001.txt><ATT00002.txt>
>
>
>
> ------------------------------------------------------------------------------
> The Palm PDK Hot Apps Program offers developers who use the
> Plug-In Development Kit to bring their C/C++ apps to Palm for a share
> of $1 Million in cash or HP Products. Visit us here for more details:
> http://ad.doubleclick.net/clk;226879339;13503038;l?
> http://clk.atdmt.com/CRS/go/247765532/direct/01/
> _______________________________________________
> icu-design mailing list
> icu...@li...
> To Un/Subscribe: https://lists.sourceforge.net/lists/listinfo/icu-design
>
|