Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/santhoshtr/cldrpluralruleparser

CLDR Plural Rule Parser
https://github.com/santhoshtr/cldrpluralruleparser

cldr parser plural-rules

Last synced: 3 months ago
JSON representation

CLDR Plural Rule Parser

Awesome Lists containing this project

README

        

CLDR Plural Rule Evaluator
==========================
Find out the plural form for a given number in a language
[![NPM version](https://badge.fury.io/js/cldrpluralruleparser.svg)](https://www.npmjs.org/package/cldrpluralruleparser)
[![Node.js CI](https://github.com/santhoshtr/CLDRPluralRuleParser/actions/workflows/node.js.yml/badge.svg)](https://github.com/santhoshtr/CLDRPluralRuleParser/actions/workflows/node.js.yml)

Quick start
----------

```bash
git clone https://github.com/santhoshtr/CLDRPluralRuleParser.git
npm install
```

Documentation
----------

Unlike English, for many languages, the plural forms are just not 2 forms.
If you look at the CLDR plural rules table
you can easily understand this. The rules are defined in a particular syntax
(an eg: for Russian, the plural few is applied when the rule
"`n mod 10 in 2..4 and n mod 100 not in 12..14;`" is passed).

This tool is a demonstration of a [javascript parser](./src/CLDRPluralRuleParser.js)
for the plural rules in that syntax.

For a given number in a language, this tool tells which plural form it belongs.
The plural rules are taken from the CLDR data file

Example
--------
Demonstration of the javascript parser at:
http://thottingal.in/projects/js/plural/demo/

Test
----
```npm test```

Node module
-----------
This is also available as a node module. You can install it using:

`npm install cldrpluralruleparser`

Once installed it provides a command line utility named cldrpluralruleparser too.
```
$ cldrpluralruleparser 'n is 1' 0
false
```