po2json
po2json copied to clipboard
`mf` format can't handle plurals
Expected Behavior
I have this entry in my po file -
#: test/registry.py:63
msgid "You only have %1 lesson left to finish %2."
msgid_plural "You only have %1 lessons left to finish %2."
msgstr[0] "asd %1 %2"
msgstr[1] "asd %1 %2"
msgstr[2] "asd %1 asd %2"
#: test/registry.py:68
msgid "An access token is required to access this resource"
msgstr ""
which should convert to a format that works fine with both gettext()
and ngettext()
in gettext.js.
Actual Behavior
If I use raw
format, it generates -
{
"You only have %1 lesson left to finish %2.": [
"You only have %1 lessons left to finish %2.",
"asd %1 %2",
"asd %1 %2",
"asd %1 asd %2"
],
"An access token is required to access this resource": [
null,
""
],
...
}
Which, when using gettext.js, doesn't work with gettext()
, and only works with ngettext(%s, 1)
even for the singular value as the second string.
If I use mf
format, it generates -
{
"You only have %1 lesson left to finish %2.": "asd %1 %2",
"An access token is required to access this resource": "",
...
}
Which works fine with gettext()
in gettext.js, but the plural values are ignored when converting to json.
Steps to Reproduce
after following recommended workflow.
@iambibhas I am also facing similar issue. Did you by chance get any solution for 'mf' not able to handle plurals?
Same problem
Same problem.
I think it's related to https://github.com/smhg/gettext-parser not this lib.