[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-i18n-doc
Subject: Re: Commit hook now using msgfmt -c
From: Chusslove Illich <caslav.ilic () gmx ! net>
Date: 2007-10-16 14:59:46
Message-ID: 200710161659.51595.caslav.ilic () gmx ! net
[Download RAW message or body]
> [: Yukiko Bando :]
> Japanese processui.po (in kdebase) is rejected because of this message.
> [...]
> processui.po:204: 'msgstr' is not a valid C format string, unlike 'msgid'.
I thought whether I should also mention this particular issue in the
original post, but opted against for brevity -- however, the odds bet me on
it :)
Unfortunatelly, this is one (rare) mode of failure that cannot be avoided;
upon extracting POT, xgettext interpreted the "...% i..." part in
"...than 100% if you..." as a c-format directive, and therefore asigned
c-format flag to the messages. Of course, in translation the "...% i..." is
most probably not going to be preserved, and so the error.
This must be solved on case-by-case basis by explicitely marking the message
as no-c-format in the code itself, via special comment for xgettext, in the
line just preceeding the message. In this example, the fix was:
...
// xgettext: no-c-format
return i18n("The CPU usage that this process is currently using. "
"This can be greater than 100% if you have more than "
"one processor.");
and over the night Scripty will update POTs and POs to the "committable"
state.
For a statistical measure, I went about adding these comments before the
hook was engaged, finding less than 20 of messages needing them (to ~100.000
current total). So I don't think there is a need for more formal mechanism
than translators reporting these issues as encountered, and than anyone with
commit access feeling so can add the comment (instead of writing a bug
report or something...)
--
Chusslove Illich (Часлав Илић)
Serbian KDE translation team
["signature.asc" (application/pgp-signature)]
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic