Hi, On Fri, 2011-07-29 at 02:29 +0100, Jacob Nevins wrote: > Michael Bauer writes: > > 27/07/2011 11:00, sgrìobh [email protected]: > > PoEdit throws a wobbly on the following and I don't understand it: > > > > po:8841: 'msgstr[0]' is not a valid C format string, unlike 'msgid'. > > Reason: In the directive number 1, the character '$' is not a valid > > conversion specifier. > > > > msgid "Your attacking %s succeeded against the %s %s (and %d other unit)!" > > msgid_plural "Your attacking %s succeeded against the %s %s (and %d > > other units)!" > > msgstr[0] "Shoirbhich an %1$s agad leis an ionnsaigh air aonad %3$s %2$s > > (agus %4$d aonad eile)!" > [...] > > I've had a stare at this and I don't have any ideas. > It's conceivable that your PoEdit could not know about the reordering > ($) syntax, which isn't universal, but I'd be a bit surprised, given how > useful it is for localisation. Is it a reasonably recent version?
I'd go for assuming it's a poedit issue as well. There seems to have been similar issues reported on poedit on the Redhat bugzilla in 2010: https://bugzilla.redhat.com/show_bug.cgi?id=634385 > > msgid "%s and %d other unit lost to an attack from the %s %s." > [...] > > Can't spot the flaw here, either. Sorry, I lost the original questions to an overly-vigorous post-vacation inbox pruning, and can't hacker out if there was a file I could peek at on e.g. cazfi by now. X-) But I assume this concerned the same kind of error. -> Likely Poedit issue. If the file goes through msgfmt -c <file>.po without these complaints, I figure it very effectively confirms these are a poedit issue only. > > And > > po:9051: format specifications in 'msgid' and 'msgstr' for argument 1 > > are not the same > > msgid "Your unit may not move for another %s this turn. See /help > > unitwaittime." > > msgstr "Chan urrainn dhan aonad agad gluasad fad %s eile sa chuairt seo. > > Faic /help unitwaittime." If I recall correctly, usually this error would mean that instead of %s you've had a %d somewhere. But since that's clearly not the case here, I can only think of two options: 1) The parser is confused: the line number is incorrect or thrown off by a syntax error (or poedit bug ;)) earlier in the file. We may include the option "the human parser of line numbers is confused" here too - but the main approach remains to double-check nearby strings around the line number and then shrug and see if fixing other things makes it go away. (Or, again, if msgfmt -c gives a different error.) 2) Character difference that cannot be seen with the naked eye: e.g. there's a magical invisible altgr-space after the %s (I sometimes manage to create these in Emacs after other altgr-characters ("{"s and "|"s) and totally throw off my compiler, but this is unlikely to occur after a 's' unless your keyboard layout is fascinating. ;)) Speaking of which, what a beautiful language you have! :D Good luck with them tools, --Sini - Finnish translator _______________________________________________ Freeciv-i18n mailing list [email protected] https://mail.gna.org/listinfo/freeciv-i18n
