[libreoffice-l10n] Invalid Entry in Po Files

Richard PALO richard at netbsd.org
Tue May 24 11:50:01 UTC 2016


Le 24/05/16 12:37, Christian Lohmaier a écrit :
>>>   41  invalid nplurals value
>>>   41  invalid plural expression
> 
> Indeed.
> 
> 41 "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
> (all in be project)
> 
>>>   82  n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
> 
> that line seems to be missing something, likely bug in your parser.
> Anyway, LO doesn't really make use of plural forms..
> 
> $ git grep msgid_plural
> $
>...

one full example

> translations/source/be/shell/source/win32/shlxthandler/res.po:3: invalid nplurals value
>                                                                  Try using the following, valid for Belarusian:
>                                                                  "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
> translations/source/be/shell/source/win32/shlxthandler/res.po:3: invalid plural expression
>                                                                  Try using the following, valid for Belarusian:
>                                                                  "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"

though 'win32' is probably not actually parsed in my build

> 
> so no idea where you get the 82 lines only - it has a nonmatched ), so
> that line is incomplete, but see above - LO doesn't make use of plural
>  forms...
> 
I think it stems from 82 = 41 * 2 (for invalid nplurals value + invalid plural expression)

> well - nothing really broken, e xcept maybe the plural expression, but
> for that one needs the actual bug line
> $ git grep -h 'n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 :
> 2);\\n"'  |sort |uniq -c
>    1466 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 :
> n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
>     351 "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 &&
> n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
> 
> so no idea where you get the 82 lines only - it has a nonmatched ), so
> that line is incomplete, but see above - LO doesn't make use of plural
>  forms...

see above.

so if I understand correctly, there is nothing to be done outside of intervention by the translation teams (or
individuals) about these errors/warnings.. 

okay. thanks anyway for taking the time to explain.

BTW, also noticed the following during the build:
> Warning : Can't open /tmp/pkgsrc/misc/libreoffice/work/libreoffice-5.1.3.2/translations/source/af/dictionaries/ca.po
> Warning : Can't open /tmp/pkgsrc/misc/libreoffice/work/libreoffice-5.1.3.2/translations/source/af/dictionaries/cs_CZ.po
> Warning : Can't open /tmp/pkgsrc/misc/libreoffice/work/libreoffice-5.1.3.2/translations/source/af/dictionaries/gd_GB.po
they seem to be non-existent in git too.

cheers
-- 
Richard PALO



More information about the LibreOffice mailing list