bronx.fancies.language

Various tools related to languages.

Classes

class bronx.fancies.language.Pluralise(curlocale=None)[source]

Bases: object

Given a singular word, returns the plural form.

We try to preserve the case as much as possible

English example:

>>> pl = Pluralise(curlocale='en_GB')
>>> print(pl(''))

>>> print(pl('Goose'))
Geese
>>> print(pl('DOLLY'))
DOLLIES
>>> print(pl('GEnius'))
GEnii
>>> print(pl('jones'))
joneses
>>> print(pl('pass'))
passes
>>> print(pl('zero'))
zeros
>>> print(pl('casino'))
casinos
>>> print(pl('hero'))
heroes
>>> print(pl('church'))
churches
>>> print(pl('x'))
xs
>>> print(pl('car'))
cars

For now, only the english language is support:

>>> pl = Pluralise(curlocale='fr_FR')
Traceback (most recent call last):
...
ValueError: This class does not supports the "fr_FR" locale

Single words are the only accepted values:

>>> pl = Pluralise(curlocale='en_US')
>>> pl("This is a complete sentence")
Traceback (most recent call last):
...
ValueError: "This is a complete sentence" is not a single word
Parameters:

curlocale – The locale to be considered. If None, the object will try to guess the current locale using the locale package.