Open
Description
I open this ticket to track the ordinal's feature.
From my understanding, what we should achieve is:
>>> parse('first')
'1st'
>>> parse('second')
'2nd'
>>> parse('third')
'3rd'
>>> parse('twenty-third')
'23rd'
>>> parse('thirtieth')
'30th'
However, as we support other words in the sentence, we should probably take care of some ambiguous words. I would take special care to "second". I think it should be translated to "2nd" only when it's not preceded by:
1
(example:"1 second"
)one
(example:"one second"
)a
(example"a second"
).- another ordinal (examples:
"first second"
-->"1st second"
or"fourth second"
-->"4th second"
).
Of course, this logic would be probably necessary to be applied only to some languages, so it shouldn't be inside the main logic but in a language-specific section.