bugGNU gettext - Bugs: bug #22050, msgfmt complains about plural forms

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #22050: msgfmt complains about plural forms

Submitted by:  Gil Forcada <gforcada>
Submitted on:  Fri 18 Jan 2008 08:41:30 PM UTC  
 
Category: Plural formsSeverity: 3 - Normal
Item Group: NoneStatus: Not a Bug
Privacy: PublicAssigned to: Bruno Haible <haible>
Open/Closed: Closed

Sat 19 Jan 2008 01:35:49 AM UTC, comment #3:

Yes it is a translator mistake: The msgstr[0] is used for all n,
singular or plural (since that distinction does not exist in
Turkish for this type of sentence). It does not have %d in it,
therefore it is not a faithful translation of msgstr_plural.
The translator should write a sentence that refers to the number,
via %d.

Here is the doc we have for programmers:
http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html

(Doc for translators for this feature is still missing.)

Bruno Haible <haible>
Project AdministratorIn charge of this item.
Sat 19 Jan 2008 12:00:37 AM UTC, comment #2:

uh, sorry it's not that case, it's like this:

#: ../src/terminal-window.c:2322
#, c-format
msgid "This window has one tab open. Closing the window will close it."
msgid_plural ""
"This window has %d tabs open. Closing the window will also close all its "
"tabs."
msgstr[0] ""
"Bu pencerenin bir sekmesi açık. Pencereyi kapatmak onu da kapatacak."

in the singular form isn't needed to put the %d, but since the english plural form use it, msgfmt -cv complains

Gil Forcada <gforcada>
Fri 18 Jan 2008 11:03:07 PM UTC, comment #1:

This is normal. If msgstr_plural is "%u bytes %foo", it expects
two arguments: an 'unsigned int' and a 'double'. If the Turkish
translation omits the 'double' argument, the translator did a
mistake: The 'double' argument is supposed to contain information,
and it's not the translator's business to change the program's
general behaviour by dropping it.

Bruno Haible <haible>
Project AdministratorIn charge of this item.
Fri 18 Jan 2008 08:41:30 PM UTC, original submission:

if your language (in this case Turkish) doesn't have plural forms the way they translate is like this:

#: ../src/util.cpp:77
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u bayt"

but when in the english plural form you have a %foo (an not in the singular form) msgfmt -cv complains about missing plural form (even if in the header is this: "Plural-Forms: nplurals=1; plural=0;\n")

Gil Forcada <gforcada>

 

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by haible (Posted a comment)
  • -unavailable- added by gforcada (Submitted the item)
  • -unavailable- added by gforcada
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 6 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Sat 26 Nov 2016 11:53:11 PM UTChaibleCategoryNone=>Plural forms
    Thu 06 Mar 2008 01:56:51 AM UTChaibleStatusWorks For Me=>Not a Bug
    Fri 18 Jan 2008 11:03:07 PM UTChaibleStatusNone=>Works For Me
      Assigned toNone=>haible
      Open/ClosedOpen=>Closed
    Fri 18 Jan 2008 08:41:30 PM UTCgforcadaCarbon-Copy-=>Added gforcada

    Back to the top


    Powered by Savane 3.1-cleanup1