On Jun 21, 2012, at 7:13 AM, Krinkle wrote:
On Jun 20, 2012, at 1:02 PM, Niklas Laxström wrote:
No, this is not about a wikitext parser. Rather something much simpler.
Have a look at [1] and you will see rules like: n in 0..1 n is 2 n mod 10 in 3..4,9 and n mod 100 not in 10..19,70..79,90..99
Long ago when I wanted to compare the plural rules of MediaWiki and CLDR I wrote a parser for the CLDR rule format. Unfortunately my implementation uses regular expression and eval, which makes it unsuitable for production. Now, writing parsers is not my area of expertise, so can you please point me how to do this properly with PHP. Bonus points if it is also easily adaptable to JavaScript.
[1] http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_ru...
-Niklas
You may already know this, but santhosh is working on a parser[1] in javascript (as a node module, to be specific). I added a test suite to his repository. Ready to be expanded and build upon!
-- Krinkle
Would be nice if there was an official test suite to use as input for it, so we don't have to maintain the test suite manually.
Also useful link, syntax specification: http://unicode.org/reports/tr35/#Language_Plural_Rules
-- Krinkle