Package: gettext Version: 0.17-4 Hi,
I noticed that msgmerge is very picky about the order of comments in PO files. $ cat test.po msgid "" msgstr "" "Project-Id-Version: test\n" "PO-Revision-Date: 2009-02-23 23:21+0100\n" "Last-Translator: <j...@localhost>\n" "Language-Team: German <j...@localhost>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #| msgid "File not found :-)" #: test.cc:1 #, c-format msgid "File not found" msgstr "Datei nicht gefunden" $ msgfmt -cv test.po test.po:13:1: syntax error msgfmt: found 1 fatal error Reordering the comments to #: test.cc:1 #, c-format #| msgid "File not found :-)" fixes this problem. You may ask why I used a PO file with such an ordering, right? The reason is that I have also access to gettext version 0.15 (doesn't support --previous option of msgmerge) and with this version I get: $ sed 's/test.cc:1/test.cc:2/' test.po > test-new.po $ msgmerge -U test-new.po test.po Comments look now: # | msgid "File not found :-)" #: test.cc:1 #, c-format I now substituted "# |" by "#|" because I don't want to commit a PO file with unwanted "# |" comments and get an invalid file ... Nevertheless gettext 0.15 doesn't report errors so I committed a bogus file. PS: Just in case you wonder why I call msgmerge to update a file against itself: I found that this improves line breaks (the result of msgmerge and xgettext is very different in this regard!!) and leads to smaller diffs for version control systems. This is probably worth a separate bug report. Jens -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org