error in translation error-checking
I'm translating the Transmission Bittorrent client into Arabic, and I've encountered a bug in the mechanism that checks for errors in translations. The problem occurs in the translation of message 77:
English singular:
%1$'d Piece @ %2$s
English plural:
%1$'d Pieces @ %2$s
"msgstr[0]' is not a valid C format string, unlike 'msgid'. Reason: The string refers to argument number 2 but ignores argument number 1."
This is incorrect, because in Arabic, ignoring argument 1 in the translation is often the right thing to do. If the value of the argument is 0, 1 or 2 (as determined by the gettext plural expression), the translation should reflect this value in the form of the Arabic word for "piece", rather than by including the number itself in the translation; therefore the translation will not refer to the argument. There's an example here (in Arabic) on the Arabeyes project Wiki: http://
As a workaround, I've included argument 1 in parentheses in the translation, but this is a hack, because it has no reason to be there. The error-checking mechanism should be fixed so that it accepts translations that don't refer to all the arguments.
Question information
- Language:
- English Edit question
- Status:
- Solved
- Assignee:
- No assignee Edit question
- Solved by:
- Benjamin Geer
- Solved:
- Last query:
- Last reply: