German Translation

Discuss, plan, and make Translations for FreeOrion
Message
Author
User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: German Translation

#31 Post by Vezzra »

shivu wrote:Live is hard!
Ok, let's take a deep breathe and sort things out here...
1. I am not responsible for the actual state of two German files.
I don't think that Dilvish wanted to imply that. I'm more inclined to believe he's merely been asking some questions to clarify how exactly we should proceed concerning the two conflicting german stringtable files.
2. When I begin to translate I use the most actual file, seems to be logic. That was ger_stringtable.txt.
Perfectly reasonable. I don't think anyone objects to this decision.
3. That a second German file was always a “Dorn im Auge” to me. Sry I cannot translate this expression, but it means more or less “I don’t like it”.
Agreed. I understand and share that sentiment.

BTW, the translation that probably comes closest to the german phrase of "Dorn im Auge" would be "thorn in my side" ;)
5. The de_ file does not contain anything that could be useful to me. All entries are very old and no more up-to-date.
Well, looks like we don't have universal agreement on this one, as adrians answer seems to imply. And judging by one of your replies above with regard to this problem I got the impression that altough you think most of the entries in the old de.txt file are outdated, you've at least kept copies of some of them to use them once you get to translate the respective entries. I'll try to address that, see below.

I understand that you're probably a bit annoyed because you feel the need to repeat yourself. Please have patience, I'll try to sort things out. After all, Adrian has offered to help by taking it upon himself to do the merging, why not let him assist you with what's probably an annoying task.
6. And finally, I have no access to the repository. I can just ask, pls, pls...
Point taken! ;) I've renamed the old de.txt to de_old.txt (as Dilvish suggested), renamed ger.txt to de.txt and committed your last changes. I want to keep de_old.txt around until we've merged anything from there into de.txt we might want to preserve (if there is anything at all we want to preserve). With now having de.txt and de_old.txt I think there sould be no more confusion about which of the files is the actual and current german stringtable file.

adrian_broher wrote:There are a lot of entries in de.txt that are good to use, translate the english entry properly and are not part of ger.txt.
I've queried the svn metadata on these files. Going by that info, ger.txt (formerly ger_stringtable.txt) is the original german stringtable file. With commit#3549, de_stringtable.txt has been added, apparently an alternate, complete (at that time) translation by Lathanda (see commit log). After that there have been only a few updates to ger_stringtable.txt and de_stringtable.txt committed. Some of these updates have been applied to both files, and some (including the most recent) only to ger_stringtable.txt. So using ger_stringtable.txt/ger.txt to work with has definitely been the right decision.

The question is, which are these entries in de.txt (now de_old.txt) you're referring to? If these are translations of old, leftover entries in the english stringtable that aren't used anymore (and I got the impression that's not only just a few), or translation of entries that have been changed afterwards, there's probably no need to merge them into the new de.txt.

Moreover, shivu has already explained that he has retained copies of at least some entries of the old de.txt to use them once he gets to translate the respective sections. So apparently he intends to merge what's still useful. That said, I see no reason why not to take up your offer to help with that. It should be possible for shivu and you to coordinate your efforts.

User avatar
adrian_broher
Programmer
Posts: 1156
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: German Translation

#32 Post by adrian_broher »

Vezzra wrote:So using ger_stringtable.txt/ger.txt to work with has definitely been the right decision.
I never implied otherwise. However, I think just deleting the de_old.txt is a bad idea, because
Vezzra wrote:The question is, which are these entries in de.txt (now de_old.txt) you're referring to?
there a vast amount of ready to use translation entries where no translation in de.txt exits. For example:
  • OPTIONS_DB_* (90%)
  • OPTIONS_VIDEO_* (100%)
  • OPTIONS_UI_* (95%)
  • OPTIONS_GALAXY_* (90%)
  • OPTIONS_SOUND_* (30%)
  • various other OPTIONS_* (?, I can't summarize this from a quick glance)
  • DESC_* (Related to valuerefs, effects and conditions, I would say close to 90%)
  • A lot of technologies are already completely or partially translated where there is only the English translation in de.txt.
Counting those together there are serveral hundred entries that still can be used and it would be a waste of effort to bin just these. Giving the right tools (as mentioned with meld or windiff in a previous post) it should be quite easy to put those files together.

Additionally to that there are various places where de_old.txt contains a better wording so it should be considered to take those when possible to create a string table of better quality.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

shivu

Re: German Translation

#33 Post by shivu »

Vezzra: thanks for your post. All what you write is pure logic and right. It was my mind to, so I can only agree with that.

About keeping the old de_stringtable, I make a mistake. I forgot the difference between onemenshow and team. It is better to keep a file defined as such.

Merging the entries from the old de_ file is not the problem. It is a trivial job, and I already done it last year. Unfortunately when I reach about 95 % of the job I realize that a lot of the entries were not up-to-date. Disappointed I leave that for better days.

What to do is, sort the entries, up-to-date (for merge), not up-to-date (keep as help, just in case).

User avatar
adrian_broher
Programmer
Posts: 1156
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: German Translation

#34 Post by adrian_broher »

shivu wrote:Merging the entries from the old de_ file is not the problem. It is a trivial job, and I already done it last year. Unfortunately when I reach about 95 % of the job I realize that a lot of the entries were not up-to-date. Disappointed I leave that for better days.
Do you still have the result of this task? If yes it would be nice if you share it to analyse if and how this can be used. But the knowledge I have for now I would like suggest the following approach to tackle the merge:
shivu wrote:What to do is, sort the entries, up-to-date (for merge), not up-to-date (keep as help, just in case).
I agree with you on that, but I think we can avoid some of no-brainers on this task by automating the merging to a certain degree.

Assuming we have en.txt as reference string table, de.txt as string table, where the 'best' translation should be merged into and de_old.txt as string table, where we can find potential 'best' translations. You will find several cases that don't need human intervention and would reduce the amount of entries that need human review significantly.

Case 1:
The translation entry key exists in en.txt, de.txt and de_old.txt. The translation value of en.txt, de.txt and de_old.txt are the same. That means this is a completely untranslated entry and therefor can be discarded from de_old.txt

Case 2:
The translation entry key exists in en.txt, de.txt and de_old.txt. The translation value of en.txt and de_old.txt are the same, but de.txt is different. That means there is already a translated string, but not a candidate for merging. The entry should be discarded from de_old.txt

Case 3:
The translation entry key exists in en.txt, de.txt and de_old.txt. The translation value of en.txt and de.txt are the same, but de_old.txt is different. That means this is a translated string and a candidate for merging. The entry should be written into de.txt and discarded from de_old.txt.

And now to the cases, where human intervention is required:

Case 4:
The translation entry key exists in en.txt, de.txt and de_old.txt. The translation value of all three variants is different. So someone must review it to pick the best candidate from de.txt and de_old.txt and merge it into de.txt if needed.

Case 5:
The translation key in de_old.txt doesn't exist in en.txt. This is probably an outdated string where it's key was renamed or removed altogether. We could either delete it immediately or investigate how this string was renamed. I would handle this as last case to have the smallest possible set of string entries.

As you see this problem can be handled in several increments, that doesn't need a lot of agreements for the Case 1 and Case 2, because it wouldn't affect you in translating. Case 3, 4 and 5 would need to arranged to avoid collisions when realizing those steps.

What do you think about this suggestion?
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

shivu

Re: German Translation

#35 Post by shivu »

adrian_broher wrote:
shivu wrote:Merging the entries from the old de_ file is not the problem. It is a trivial job, and I already done it last year. Unfortunately when I reach about 95 % of the job I realize that a lot of the entries were not up-to-date. Disappointed I leave that for better days.
Do you still have the result of this task? If yes it would be nice if you share it to analyse if and how this can be used. But the knowledge I have for now I would like suggest the following approach to tackle the merge:
What you explain on your last posting, is more or less what I have done.
Attached the “unfinished” file as requested.

Case 1 and 2: not of interest, but why not. if you wish.
Case 3: I would be interested in the result. Only the positively result of the test.
Case 4: long and tedious work! That’s a problem.
Case 5: should not be a problem, but who knows? Honestly, too much work for one probably null.
Attachments
ger_stringtable.zip
(87.18 KiB) Downloaded 104 times

User avatar
adrian_broher
Programmer
Posts: 1156
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: German Translation

#36 Post by adrian_broher »

The attached patch removes 468 entries from de_old.txt, matching case 1 and 2, leaving 2665 entries for further inspection.

shivu: do you currently work on de.txt? If that's the case please post the current status so I can apply case 3.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

shivu

Re: German Translation

#37 Post by shivu »

adrian_broher wrote:
shivu: do you currently work on de.txt? If that's the case please post the current status so I can apply case 3.
Here is my current file. To know the en_ reference of this file, have a look at line 3
Attachments
de.zip
(102.81 KiB) Downloaded 107 times

User avatar
adrian_broher
Programmer
Posts: 1156
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: German Translation

#38 Post by adrian_broher »

The attached patch merges de_old.txt and ger.txt into de.txt.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

shivu

Re: German Translation

#39 Post by shivu »

German stringtable updated to svn6098
Attachments
de.zip
(103.2 KiB) Downloaded 100 times

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: German Translation

#40 Post by Vezzra »

shivu wrote:German stringtable updated to svn6098
Does this update incorporate the merge adrian has posted?

shivu

Re: German Translation

#41 Post by shivu »

Vezzra wrote:
shivu wrote:German stringtable updated to svn6098
Does this update incorporate the merge adrian has posted?
No, this patch does not match my expectations.

User avatar
Dilvish
AI Lead and Programmer Emeritus
Posts: 4768
Joined: Sat Sep 22, 2012 6:25 pm

Re: German Translation

#42 Post by Dilvish »

shivu wrote:No, this patch does not match my expectations.
It will be hard to make headway if you don't elaborate...
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

User avatar
Vezzra
Release Manager, Design
Posts: 6095
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: German Translation

#43 Post by Vezzra »

shivu wrote:
Vezzra wrote:Does this update incorporate the merge adrian has posted?
No, this patch does not match my expectations.
Inhowfar? I'd appreciate if you could give me specific details on what you think are the problems with adrian's patch. I admit I've been hoping that adrian and you are able to sort things out concerning the german stringtables without me having to take a look at them myself, because that's a very time consuming task. Time I'd rather spend on other FO related things.

However, if you two can't come to a satisfying agreement, I'll have to take the time to investigate the work both of you have done here, as I'm (to my knowledge) the only German native speaker with committer status. I'm not going to throw a dice to decide which patches I'm going to commit, as you surely can understand... ;)

User avatar
Dilvish
AI Lead and Programmer Emeritus
Posts: 4768
Joined: Sat Sep 22, 2012 6:25 pm

Re: German Translation

#44 Post by Dilvish »

Since shivu is in the process of coming up to speed on using patch files, I went ahead and applied adrian's patch to shivu's latest de.txt. Out of ~160 hunks in the patch all but two applied without a glitch, and of those two nominal glitches, one of them was actually because shivu and adrian had made the same change to the previous rev of de.txt.

so the only outstanding difference was

GSETUP_MATURE
Erwachsen

vs

GSETUP_MATURE
Alt

and I left that as
GSETUP_MATURE
Erwachsen

Code: Select all

r6105 - applies adrian's patch to shivu's latest version of de.txt and removes de_old.txt
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

User avatar
adrian_broher
Programmer
Posts: 1156
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: German Translation

#45 Post by adrian_broher »

Updated and reworded translation. I'm starting at the top of the string tables and translate all strings until they are completely translated and then catch up with the latest version.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

Post Reply