savoirfairelinux / num2words

Modules to convert numbers to words. 42 --> forty-two
GNU Lesser General Public License v2.1
820 stars 497 forks source link

Add gender and morphological cases support for Ukrainian #530

Closed kant2002 closed 1 year ago

kant2002 commented 1 year ago

Added two parameters: gender and case gender can accept either 'masculine' (default) or 'feminine' case can accept either 'nominative' (default) or 'genitive','dative','accusative','instrumetnal','locative' and 'vocative'.

This parameters now working only for to='cardinal'

Changes proposed in this pull request:

Status

How to verify this change

Personally I use this one website https://vshkole.in.ua/vidminiuvannia-chislivnikiv/

I can lookup at more interesting English sources, but it will take time. Also I will try ask for help from local NLP community if that's helpful.

Additional notes

Slavik languages can have varying forms for words based on grammatic case and gender, so if attempt to convert numbers embedded in the sentence accounting for the form is required. I assume that it's responsibility of the caller to properly identify case and gender of related words.

kant2002 commented 1 year ago

@mrodriguezg1991 can I bring your attention to this PR? Do you think this is valuable addition?

kant2002 commented 1 year ago

I reformat source code

kant2002 commented 1 year ago

I reformat tests. Did not realize that I should check them, I cannot replicate setup locally, since I use venv and it create false positives for me somehow.

coveralls commented 1 year ago

Coverage Status

coverage: 97.397% (-0.002%) from 97.399% when pulling 6c8e66bd37f38eac3ef339963b88ebf8140b26d7 on kant2002:kant/add-cases into 872510dd8bfea767916067f60856fc9c360059fe on savoirfairelinux:master.

kant2002 commented 1 year ago

What's my next steps? I see coverage setting go down only in Vietnamese which I did not touch. Is this some infra problem?