New keyed translations format

Started by ison, September 04, 2018, 08:06:39 AM

Previous topic - Next topic

Elevator

QuotePlurale tantum - a noun that appears only in the plural form and does not have a singular variant for referring to a single object, (in czech) door, scissors, pants, etc.
I agree with @morticinus. Russian language works the same way.

ison

Quote from: morticinus on March 10, 2019, 08:05:52 AM
Hi Ison
The Czech language has three genders. Male, female, neuter. I'm beginning to rework some sentences to sound better. I'm using {0_gender? A: B: C}.
However, I also need to have the D variant like this: {0_gender? A : B : C : D } + added WordInfo/Gender/Plural.txt
(maybe to future customizable like this: {0_gender? A : B : C : D : etc : etc }, only if easy to add)

Hmm, I understand. Some nouns are always plural in some languages so even if you know that {0} refers to only 1 object you still need to use the plural form sometimes. Your proposed solution works, though I see some minor problems with it. What if the plural form also depended on the gender? We'd need A : B : C : D : E : F. What if {0} already referred to multiple objects? (e.g. "cats" or "dogs"), would "A" be translated to "cats" or "cat" and then you'd have to use D, E, F? It's a bit confusing. Maybe what we need is something like this: {0_count ? {0_gender ? A : B : C} : {0_gender ? A : B : C}}. It's getting a bit complex, we'd need to pass the "count" information everywhere in our code.

morticinus

Hi Ison,
I don't know if we understand each other. Maybe, I described it wrong.

I need to improve this:

Quote from: ison on September 04, 2018, 08:06:39 AM
Our system can easily tell the gender of a pawn, but it can't tell the gender of any other object. This means that if you want to use a gender conditional expression on, for example, items, then you need to provide some lookup tables by creating the following files in your language folder:
WordInfo/Gender/Male.txt
WordInfo/Gender/Female.txt
WordInfo/Gender/Neuter.txt
and add one word per line to each file, e.g.: (Male.txt)
sword
computer
keyboard


then if an object whose label is "sword" is passed, its _gender will be male.

This makes it possible to do this:
{THING_label} is {THING_gender ? beautiful1 : beautiful2}
where "beautiful" is different based on the THING's gender (which happens in some languages).

{0_gender? A : B } = great for Backstories.xml (used for verbs, adjectives, pronouns (male, female)....etc
{0_gender? A : B : C} = this works great in Keyed folder (primarily for objects) but I can't always use it
{0_gender? A : B : C : D} = I need this for great translation improvements (A Female.txt, B Male.txt, C Neuter.txt, D xxxxx.txt (Plural.txt??))
__________________________________________________________________________________________________
Example using of {0_gender ? A : B : C : D} for label "flower" (Female.txt):
-- {THING_label} is {THING_gender ? beautiful1 : beautiful2 : beautiful3 : beautiful4}.

Singular form - "flower" (translated to květina) is in the file Female.txt

květina //flower
baterie  //battery
židle  //chair
...


Result:
-- Flower is beautiful2.


__________________________________________________________________________________________________
Example using of {0_gender ? A : B : C : D} for label "doors" (Plural.txt):
-- {THING_label} is {THING_gender ? beautiful1 : beautiful2 : beautiful3 : beautiful4}.

Plurale tantum form - "doors" (translated to dveře - only plural form in Czech) is in the file Plural.txt

dveře //doors
nůžky //scissors
kalhoty //pants
...


Result:
Doors is beautiful4


__________________________________________________________________________________________________
Example using of {0_gender ? A : B : C} for label "dog/cat/pig" (Male.txt/Female.txt/Neuter.txt):
-- {0_label} is {0_gender ? beautiful1 : beautiful2 : beautiful3}.

Result:
-- Dog is beautiful1.
-- Cat is beautiful2.
-- Pig is beautiful3.

I would keep a simple system.
This system will help me many problems.

Thank you.

MaBo974

Hi Ison, I think there is an error with the  definition of {x_objective} for Italian language. I've recently change the Interactions_Prisoner.xml file like this:

<li>r_logentry->[INITIATOR_nameDef] ha promesso a [RECIPIENT_nameDef] dei [goodthingMas], chiedendo a [RECIPIENT_objective] di unirsi.</li>

All fine except [RECIPIENT_objective] was translated as "la"; it should be "lei" for female and "lui" for male.

Please let me know if you need more info.

Thanks and have a nice day.

Arczi008TV

#19
Like morticinus said, we need {1_gender ? A : B : C : D}

Example:
{1_label} has rotted away in storage.

(rotted)

A: Male Rice/potatoe (zgnił - rotted)
B: Female Ambrosia (zgniła - "rottad")
C: Neuter Hay (zgniło - "rottod")
D: Plural Mushrooms/potatoes -Plural (zgniły - "rotteds") 

morticinus

Hi
we still need this: {x_gender? A : B : C : D} (A Female.txt, B Male.txt, C Neuter.txt, D Plural.txt)

Any chance to add this to the code?

Thank you

Arczi008TV

#21
Quote from: ison on April 01, 2019, 11:40:50 AM
Hmm, I understand. Some nouns are always plural..

Rice and corn is always plural in my language, but still rice is male and corn is female.

Problem is here. <RawPotatoes.label>Potatoes</RawPotatoes.label>
We can have one potatoe in storage. But you recieve letter:  "Potatoes has rotted away in storage."

So if you could do something like this. (that propably would be easy to do)
<RawPotatoe.label>Potatoe</RawPotatoe.label>
<RawPotatoe.labelPlural>Potatoes</RawPotatoe.labelPlural>

And then use:
  <MessageRottedAwayInStorage>{1_label} {1_gender ? A : B : C} has rotted away in storage.</MessageRottedAwayInStorage>
  <MessageRottedAwayInStoragePlural>{1_labelPlural} {1_gender ? A : B : C} has rotted away in storage.</MessageRottedAwayInStoragePlural>


We could use also
{0_labelPlural} like there is {0_kindPlural}: humans, cats, dogs (kind label (plural)