From: Bram Moolenaar Date: Sun, 13 May 2018 20:37:03 +0000 (+0200) Subject: patch 8.0.1839: script to check .po file doesn't check for plural header X-Git-Tag: v8.0.1839 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=9cfc7d885cb3bf37362b11df19a38992893fb385;p=thirdparty%2Fvim.git patch 8.0.1839: script to check .po file doesn't check for plural header Problem: Script to check .po file doesn't check for plural header. Solution: Add a check that the plural header is present when needed. --- diff --git a/src/po/check.vim b/src/po/check.vim index 9cfa36a7cd..24c4d79cb5 100644 --- a/src/po/check.vim +++ b/src/po/check.vim @@ -157,6 +157,23 @@ if executable("msgfmt") endif endif +" Check that the plural form is properly initialized +1 +let plural = search('^msgid_plural ', 'n') +if (plural && search('^"Plural-Forms: ', 'n') == 0) || (plural && search('^msgstr\[0\] ".\+"', 'n') != plural + 1) + if search('^"Plural-Forms: ', 'n') == 0 + echomsg "Missing Plural header" + if error == 0 + let error = search('\(^"[A-Za-z-_]\+: .*\\n"\n\)\+\zs', 'n') - 1 + endif + elseif error == 0 + let error = plural + endif +elseif !plural && search('^"Plural-Forms: ', 'n') + " We allow for a stray plural header, msginit adds one. +endif + + if error == 0 " If all was OK restore the view. call winrestview(wsv) diff --git a/src/version.c b/src/version.c index 04d7814bc5..a9348ef4e2 100644 --- a/src/version.c +++ b/src/version.c @@ -761,6 +761,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1839, /**/ 1838, /**/