summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2018-05-13 22:37:03 +0200
committerBram Moolenaar <Bram@vim.org>2018-05-13 22:37:03 +0200
commit9cfc7d885cb3bf37362b11df19a38992893fb385 (patch)
tree7ee616a837a7da36bb141223205ccc6602970417
parenteb3dc87f01391bb075d97aef3d00f91b4e08a25c (diff)
patch 8.0.1839: script to check .po file doesn't check for plural headerv8.0.1839
Problem: Script to check .po file doesn't check for plural header. Solution: Add a check that the plural header is present when needed.
-rw-r--r--src/po/check.vim17
-rw-r--r--src/version.c2
2 files changed, 19 insertions, 0 deletions
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
@@ -762,6 +762,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1839,
+/**/
1838,
/**/
1837,