GNU gettext - Bugs: bug #23183, msgfmt -c should accept...
You are not allowed to post comments on this tracker with your current authentication level.
bug #23183: msgfmt -c should accept translations that omit any or all arguments
Submitter: | Benjamin Geer <bgeer> | ||
Submitted: | Tue 06 May 2008 04:12:48 PM UTC | ||
Category: | Plural forms | Severity: | 3 - Normal |
Item Group: | None | Status: | Not a Bug |
Privacy: | Public | Assigned to: | haible |
Open/Closed: | Closed |
Tue 06 May 2008 11:20:27 PM UTC, comment #2: |
Bruno Haible <haible> |
Tue 06 May 2008 11:00:20 PM UTC, comment #1:
|
Bruno Haible <haible> |
Tue 06 May 2008 04:12:48 PM UTC, original submission:
Given the following message to be translated:
|
Benjamin Geer <bgeer> |
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Follow 4 latest changes.
Date | Changed by | Updated Field | Previous Value | => | Replaced by |
---|---|---|---|---|---|
2016-11-26 | haible | Category | None | Plural forms | |
2008-05-06 | haible | Status | None | Not a Bug | |
Assigned to | None | haible | |||
Open/Closed | Open | Closed |
Powered by Savane 3.13-758e.
Corresponding source code
I have this piece of documentation to the manual, regarding
ngettext:
If this function is meant to yield a format string that takes two
or more arguments, you cannot use it like this:
printf (ngettext ("%d file removed from directory %s",
"%d files removed from directory %s",
n, dir),
n);
because in many languages the translators want to replace the `%d'
with an explicit word in the singular case, just like "one" in
English, and C format strings cannot consume the second argument
but skip the first argument. Instead, you have to reorder the
arguments so that `n' comes last:
printf (ngettext ("%$2d file removed from directory %$1s",
"%$2d files removed from directory %$1s",
dir, n),
n);
See *note c-format:: for details about this argument reordering
syntax.