Czech translations for some plugins

Discussion corner for Developers of Serendipity.
VladaAjgl
Regular
Posts: 44
Joined: Mon Nov 19, 2007 10:00 pm
Contact:

Re: Czech translations for some plugins

Post by VladaAjgl »

garvinhicking wrote: If you could implement anonymous CVS and SVN checkouts of the repository, that would most probably work easiest. I'm sure there must be Java libraries for easy CVS/SVN checkouts, maybe they are not too hard to integrate? The only downside of this would be, that a lot of data would need to be downloaded to the client.
Hi,
thanks for suggestion. I was asking about something like that. Yes there are SVN libraries for Java. I will plunge into it and it's likely to be in next version.
VladaAjgl
Regular
Posts: 44
Joined: Mon Nov 19, 2007 10:00 pm
Contact:

Re: Czech translations for some plugins

Post by VladaAjgl »

Hi konus,

it is the feature of the application resulting from design philosophy. The language files that I used for testing were mostly incomplete and moreover had different structure than english files, the messages in my files were at different positions than in english. I told myself that it would be better to set the file structure the same as in english, so you can easily check if there are all messages translated. Also often english files are well formated with some useful comments, like description which part of plugin is concerned by next block of messages. And these comments are set also in local language, so you don't loose lucidity of language file.

If you leave the original structure and only add new messages, you can compare it with older version, but you cannot easily compare to english file.

And because new file is parsed in structure of english file, it must be recreated completely. And I inserted two tabs between key name and message.

What I can do is to add next settings into the app (you can suggest more if something comes back):
  • checkbox if you want the output to be formated as english file or as original file (with new messages appended at the end)
  • separator of key and message or even custom format of (key)<->(message) pairs
BTW, the problem of difficulties of upgrading your files is only temporary. Since next upgrade of language files the structure won't change;-)

Waiting for your answer
Vlad
konus
Regular
Posts: 334
Joined: Mon Jun 16, 2008 1:57 pm
Location: Dresden, Germany
Contact:

Re: Czech translations for some plugins

Post by konus »

Hi Vlad, thank you for your fast response.
VladaAjgl wrote:it is the feature of the application resulting from design philosophy...
I got the point and think that the design decision, you made is the correct way to do it.
VladaAjgl wrote: If you leave the original structure and only add new messages, you can compare it with older version, but you cannot easily compare to english file.
Right. And because changes are most likely to happen in the english file first, it would be more important to compare it with the english version.
VladaAjgl wrote: And because new file is parsed in structure of english file, it must be recreated completely. And I inserted two tabs between key name and message.
In the cases I looked into, the sequence was not the problem, but the two tabs were.

I think, an option to use a space as separator would be helpful. An other way could be an option to use the same separator like in the source file. (IMHO first line testing should be enough, they are unlikely mixed up within a single file)
VladaAjgl wrote: BTW, the problem of difficulties of upgrading your files is only temporary. Since next upgrade of language files the structure won't change;-)
I know, but this decision would have to be made by Garvin. At the moment he didn't accept my files, because they would break CVS-versioning completely.
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Czech translations for some plugins

Post by garvinhicking »

Hi!

The core problem is, that an update of an existing, well translated language files leads to the CVS/SVN diff showing *everything* as changed. This makes it for me impossible to see, what the translator actually changed.

As a maintainer, i need to check every change very thoroughly, because new translation bugs could be inserted, or even malicious translators could change "Serendipity" to something like "superPowerTool" and I wouldn't notice.

So I need some way to check, what the translator actually CHANGED in any existing language file. New translations are not so hard to implement, because then I can browse through the new file and do not need to check what an old value has been.

Regards,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
VladaAjgl
Regular
Posts: 44
Joined: Mon Nov 19, 2007 10:00 pm
Contact:

Re: translation diffs

Post by VladaAjgl »

Hi,
Ok, I understood. I can fit the app so that Garvin could easily check the changes. What would help me - if I knew which tool you are using for differences. Because web interface of svn/cvs works well with original and app-translated files. It does not care white characters, if lines are different only in them, they are marked as same. And Konus: could you send me some files that weren't accepted (both old and new)?
Vlad
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: translation diffs

Post by garvinhicking »

Hi Vlada!

D'oh!

I'm so stupid. I completely forgot about the option to discard blanks/newlines for the "svn diff" command. With that, I should be easily able to get the right differences. :(

I'll try that next week once I'm up to work again,

Regards,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
konus
Regular
Posts: 334
Joined: Mon Jun 16, 2008 1:57 pm
Location: Dresden, Germany
Contact:

Re: Czech translations for some plugins

Post by konus »

Hi Vlada,
I got feedback from garmin about the svn diff with the option enabled to discard blanks and newlines. He told me, that there are still to many differences to check my changes, because the order of some of the terms is changed.

Could you explain to me, how the order of terms in the translated langfile is determined. Are you using the order of the original to-be-translated langfile or would it be in the order of the English langfile afterwards?

I am asking, because I would like to understand the tool better, not to critique your work. Maybe garmin would accept changing the langfile in the order and format, your tool exports, if he could be sure, that this would only happen once during the first import. In this case, someone could touch (import and export) all files once without changing anything. After this revolution, changes are track-able again within CVS diffs.
VladaAjgl
Regular
Posts: 44
Joined: Mon Nov 19, 2007 10:00 pm
Contact:

Re: Czech translations for some plugins

Post by VladaAjgl »

Hi Conus,
first sorry for waiting so long for my response. I have new job and it is little bit exhausting, I have sadly not much time for s9y:-(

Ordering of translated file: It is determined by order of keys in language file. I am thinking about ordering, how to make it the best way. Because I see that the strict ordering like in english file is not perfect. At least when the order is completelty mismatched in not-english file.

Your suggestion of reordering language files without touchung their content: It is a big amount of work. Not in sense to write some script to do this change, but in sense to verify its output. Personally I think that Garvin wants to control the content of language files, and he does not trust to my translation utility enough to let it do all the work without verification. Although, in my opinion, it would be a way in right direction to standardize the order of messages in language files.

Another possibility is to change the translation tool to keep order of non-english language files, if they already exist. (It would be easy, if I only found one free evening to do that.) The inconvenient of this is, that you loose the hierarchy of english file, which is often well structured, with good comments, separated in logic sections. I cannot imagine how to keep this by adding new messages at the bottom of language file.

So this is question to discuss, for you and mostly for Garvin - do we want to have well formated language files in some clear standardized form (-> refactoring of all language files and keeping english order)? Or do we prefer to preserve history of creation of language file (and thus uninterrupted line of diffs in CVS)?

The translation tool is only a piece of software, it can do whatever people want. Important is what they want! Personally I vote for the system that I suggested in the app (english file order). But Garvin is the chief - if he says no, then the other (local file order) will be in next version of translation app.

Vlad
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Czech translations for some plugins

Post by garvinhicking »

Hi!

The problem with the english order is simply that partially untranslated files will then have untransalted words in the middle of the file. New translators seem to usually only look at the bottom of the file what is left untranslated, so I'd be afraid that we make complete translations harder.

It's not that I do not trust your translator, the problem simply is that in the past people already tried to slip advertisement into our translations and changed the "Serendipity" naming to some custom one. Thus I'm now generally a bit sceptical in accepting translations, which is why I need to see exactly what content of a variable gets changed. With different ordering, SVN/diff can't keep track of that...

...?

Regards,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
konus
Regular
Posts: 334
Joined: Mon Jun 16, 2008 1:57 pm
Location: Dresden, Germany
Contact:

Re: Czech translations for some plugins

Post by konus »

Thank you for making this clear, garvin! For me this sounds like a clear voting for:
VladaAjgl wrote:Another possibility is to change the translation tool to keep order of non-english language files, if they already exist.
Getting (and keeping) a well structured and logical order in the non-english language ist still desirable, but it should be not to be done by the translation tool.
VladaAjgl wrote:The inconvenient of this is, that you loose the hierarchy of english file, which is often well structured, with good comments, separated in logic sections. I cannot imagine how to keep this by adding new messages at the bottom of language file.
I would suggest keeping the order of the non-english language, file but try to insert new lines not at the bottom but at the "correct" position. I am thinking about something like this:
  • read all lines in non-english file and remember their positions.
  • read all lines in english file, match and temporarily sort the non-english lines according to the english master. (keep all comments, but don't display them.)
  • if there is a new line in the english file and if it is filled-in by the user, insert this new line below the position of the above line in the non-english section, count-up all positions after the inserted line.
  • if there is a deleted line in the non-english file, vice versa, count down the following positions.
  • write the lines of the non-english file back with the remembered positions.
This way, things that belong together, should stay together.

I wish you all the best with your new job, Vlada! I understand that this is far more important. I am waiting patiently.

Greetings Konus

edited at 23.4. 20:05 - small error with quote tags
VladaAjgl
Regular
Posts: 44
Joined: Mon Nov 19, 2007 10:00 pm
Contact:

Re: Czech translations for some plugins

Post by VladaAjgl »

Hi,
Garvin wrote:... New translators seem to usually only look at the bottom of the file what is left untranslated...
-> Garvin:
It sounds for me that there is a practise to insert english lines at the bottom of translated file. I am surprised a bit, I thought that in the translated file there should be only translated lines. And that it is up to the translator to find messages that are not yet translated in the english file.

-> Conus: ordering suggestion:
1. I am a bit afraid that inserting new lines makes troubles for SVN diff tool that Garvin uses. If you insert a new line, all following lines appear to change. Am I right or not, Garvin?
2. I already thought about something like that, but I found some questions that I was not able to answer. Imagine you have non-english file that has the same structure as the english file. Then your result is the same as if you took english structure, but the algorithm is much more difficult. If the structures do not match - for example you have english file with 20 lines. For example czech file has the same order of messages, only message english-15 is on the line czech-5. Now you insert a message on english-16. Result of your algorithm inserts this line on czech-6. It isn't able to recognize, that line czech-5 is in bad position. And the algorithm even increases the mess in the local czech file. I think that in this case it is better to simply insert new line at the bottom of czech file. And... if you think that the example is few probable - the czech translation of main serendipity language file (with its more than 900 messages) is full of this lines in completely non-logic position.

Summary - I will try to satisfy the needs of Garvin and the translation tool will try to keep the structure of traslated file as much as possible. It means new lines added at the bottom, the same format of messages, regardless of english structure.

Wait a while, new version will come soon;-)
Vlad
VladaAjgl
Regular
Posts: 44
Joined: Mon Nov 19, 2007 10:00 pm
Contact:

Re: Czech translations for some plugins

Post by VladaAjgl »

Hi,
so here you are - new version of translation utility. Try it.
http://vlada.ajgl.cz/archives/170-Seren ... lator.html

Vlad
konus
Regular
Posts: 334
Joined: Mon Jun 16, 2008 1:57 pm
Location: Dresden, Germany
Contact:

Re: Czech translations for some plugins

Post by konus »

Thank you for your work! I will try it, send the results to garvin and report his answer here :-)
VladaAjgl
Regular
Posts: 44
Joined: Mon Nov 19, 2007 10:00 pm
Contact:

Re: Czech translations for some plugins

Post by VladaAjgl »

Hi Garvin,
last two weekends were inspiring and productive for czech translations:-) Here is another portion:
http://vlada.ajgl.cz/myplugins/cs_s9y_t ... ions_1.zip
Vlad
konus
Regular
Posts: 334
Joined: Mon Jun 16, 2008 1:57 pm
Location: Dresden, Germany
Contact:

Re: Czech translations for some plugins

Post by konus »

Hi Vlad,
I just found time to do some German translations and sent them to garvin. Garvin is now very satisfied with the results. I would like to thank you!

greetings Konus
Post Reply