[Freeciv-Dev] Re: (PR#2565) Plural form needed for unit types
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
On Fri, Jan 03, 2003 at 04:31:53AM -0800, Jason Short via RT wrote:
> On Fri, 2002-12-13 at 09:27, Guest via RT wrote:
> >
> > Plural forms are needed for unit types. The message in "unithand.c",
> > "void handle_upgrade_unittype_request(struct player *, struct
> > packet_unittype_info *)":
> >
> > "Game: %d %s upgraded to %s for %d gold."
> >
> > needs plural forms (at least in some translations).
>
> I agree with Raimar that it unnecessary (perhaps even impossible) to
> provide plural forms for all unit names.
>
> Right now, in the above case the English is:
>
> "Game: 1 settlers upgraded to engineers for 40 gold."
> "Game: 2 settlers upgraded to engineers for 40 gold."
>
> which doesn't sound quite right, but is probably ok ("1 settlers" is
> probably correct, since the "settlers unit" no doubt has lots of
> "settlers" in it). But in other languages (e.g., Swedish) the verb
> needs to match the number as well - this is (I'm guessing) a bigger
> grammatical problem, and also easy to fix. So the text should be either
>
> PL_("Game: %d %s upgraded to %s for %d gold.",
> "Game: %d %s upgraded to %s for %d gold.",
> number_of_upgraded_units);
>
> or
>
> PL_("Game: %d unit of %s upgraded to %s for %d gold.",
> "Game: %d units of %s upgraded to %s for %d gold.",
> number_of_upgraded_units);
>
> which is functionally identical when translated, but perhaps provides
> slightly better English.
>
> (Think of it as one or more "units of settlers", not one or more
> "settlers", and it makes sense that no plural form is needed or
> desired. But perhaps this, too, varies from language to language...)
>
> -----
>
> Now, you say there are many places in the code that need these changes.
> But as a native English speaker, I don't easily see the places where
> there are verb mismatches. So I suggest that a translator who wants to
> fix this (Erik) go through and make a patch to introduce PL_ into such
> places. You can fix the English at the same time if you want (or not).
And the patch.
Erik: last chance to object.
Raimar
--
email: rf13@xxxxxxxxxxxxxxxxx
Q: Do you know what the death rate around here is?
A: One per person.
Index: server/unithand.c
===================================================================
RCS file: /home/freeciv/CVS/freeciv/server/unithand.c,v
retrieving revision 1.245
diff -u -u -r1.245 unithand.c
--- server/unithand.c 2003/01/02 03:02:16 1.245
+++ server/unithand.c 2003/01/07 11:32:45
@@ -197,10 +197,13 @@
/* Alert the player about what happened. */
if (number_of_upgraded_units > 0) {
- notify_player(pplayer, _("Game: %d %s upgraded to %s for %d gold."),
- number_of_upgraded_units, unit_types[from_unittype].name,
- unit_types[to_unittype].name,
- cost * number_of_upgraded_units);
+ notify_player(pplayer,
+ PL_("Game: %d unit of %s upgraded to %s for %d gold.",
+ "Game: %d units of %s upgraded to %s for %d gold.",
+ number_of_upgraded_units), number_of_upgraded_units,
+ unit_types[from_unittype].name,
+ unit_types[to_unittype].name,
+ cost * number_of_upgraded_units);
send_player_info(pplayer, pplayer);
} else {
notify_player(pplayer, _("Game: No units could be upgraded."));
|
|