Skip to content

Latest commit

 

History

History
 
 

simplur

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Simplur

Simple, versatile string pluralization

Installation

npm i simplur

Use CommonJS or ESM to import

const simplur = require('simplur');
import * as simplur from 'simplur';

Usage

simplur is applied as an ES6 template tag. Any token of the form "[singular|plural]", will be replaced with the appropriate value depending on the value of the expression being injected. For example ...

Simple case:

simplur`I have ${1} kitt[en|ies]`; // ⇨ 'I have 1 kitten'
simplur`I have ${3} kitt[en|ies]`; // ⇨ 'I have 3 kitties'

Simplur also supports look-ahead substitution:

simplur`There [is|are] ${1} m[an|en]`; // ⇨ 'There is 1 man'
simplur`There [is|are] ${5} m[an|en]`; // ⇨ 'There are 5 men'

It also works with multiple injected values (substitution uses preceeding expression value)

simplur`There [is|are] ${1} fox[|es] and ${4} octop[us|i]`; // ⇨ 'There is 1 fox and 4 octopi'
simplur`There [is|are] ${4} fox[|es] and ${1} octop[us|i]`; // ⇨ 'There are 4 foxes and 1 octopus'

Markdown generated from src/README_js.md by RunMD Logo