Announcement

  •  » Translations
  •  » Manage translations between trunk and branch 2

#1 2009-10-09 21:45:06

ddtddt
Piwigo Team
Quetigny - France
2007-07-27
7207

Manage translations between trunk and branch 2

Today, there is a lack of consistency between trunk and branch 2.0

On branch 2.0,  we have 16 translations available. We work this way to have them in the 2.0.x releases.

On trunk. We only have 7 translations. I think we should change that.

* Either we only keep English on trunk, we'll take care of translation at branch creation
* Or we maintain all translation on trunk to have them available faster on next branch. In that case, we need to be more rigorous in the way we manage new or updated language keys.

What's your opinion?


You love Piwigo so don't hesitate to participate, learn more on the "Contribute to Piwigo" page. If you don't have much time for contribution, you can also help the project with a donation.

Offline

 

#2 2009-10-09 23:37:37

Eric
Former Piwigo Team
VALENCE (FR)
2005-03-25
1768

Re: Manage translations between trunk and branch 2

Before giving my opinion, this is what I thought about the use of Trunk and Branch :

- Trunk is the common code, workspace. It applies all changes to the code (including languages) with possibly subject to validation of members.
- Branch would mirror the Trunk but only for codes validated and ready for release for a new version.

So we all work on the same code source (Trunk) for new features, bug fix, and so on. We merge from Trunk to Branch if code is ok. And plg (or authorised members) will use the Branch as reference to build releases.

I was a little bit in pain to commit my first codes 'cause I could not find the same references between Trunk and Branch.




In my mind, the translation files should be present identically in both parts (Trunk and Branch). And so, even if there is still no effective translation for some tags in a language file.

In this case and consistent with ddtddt's recommendations and rules :
- The default language is always English.
- If a language tag is not translated, we'ld use the english text.
- To find that there are translations to be done, the new tag should be prefixed with /*TODO*/. Thus, if a new release, translation files are valid.

According with the foregoing, I think there should have the same number of translations in the Trunk as in Branch. And still working on the same single and complete code source.

My analysis may be wrong (is it?). In this case, this topic is far to be useless ;-)

Last edited by Eric (2009-10-09 23:38:08)

Offline

 

#3 2009-10-11 11:03:24

mathiasm
Former Piwigo Team
2006-02-06
2650

Re: Manage translations between trunk and branch 2

I agree with Eric
+1

Offline

 

#4 2009-10-11 11:24:08

VDigital
Former Piwigo Team
Paris (FR)
2005-05-04
17680

Re: Manage translations between trunk and branch 2

I don't know what are you looking for.

I can add a new module in trunc with a lot of text.
Work 2 months on this module and change part of text 2 or 3 times.
And just before merge it in a branch, I could decide to remove a lot of text and translation because I can add very efficient icons.

When/where do you expect to do your translations?

I recommend branches to do less, but I am not a translator.

I think that our l10n logic is very poor, and encourage us to review it asap (I made a reco to change it).


Piwigo.com: Start and run your own photo gallery. Signup and get 30 days to try for free, no commitment.
8-)

Offline

 

#5 2009-10-11 12:17:26

nicolas
Former Piwigo Team
2004-12-30
1232

Re: Manage translations between trunk and branch 2

I think Vincent is right. But the main problem is to not forgot translations.

The idea to prefix vocab to be translated by /*TODO*/ is not a good idea. I prefer to have a word in english than a word prefixed by TODO.

The main tools we need is a simple way to extract vocabulary to be translated.

Offline

 

#6 2009-10-11 13:47:07

VDigital
Former Piwigo Team
Paris (FR)
2005-05-04
17680

Re: Manage translations between trunk and branch 2

nicolas wrote:

I think Vincent is right. But the main problem is to not forgot translations.

The idea to prefix vocab to be translated by /*TODO*/ is not a good idea. I prefer to have a word in english than a word prefixed by TODO.

The main tools we need is a simple way to extract vocabulary to be translated.

+1


Piwigo.com: Start and run your own photo gallery. Signup and get 30 days to try for free, no commitment.
8-)

Offline

 

#7 2009-10-30 00:39:58

plg
Piwigo Team
Nantes, France, Europe
2002-04-05
13790

Re: Manage translations between trunk and branch 2

VDigital wrote:

I don't know what are you looking for.

I think ddtddt tries to establish a policy for translation effort. An improved translations effort policy would answer the following questions:

* How to get as many translations as possible?
* How to have each translation as up to date as possible?

VDigital wrote:

I can add a new module in trunk with a lot of text.
Work 2 months on this module and change part of text 2 or 3 times.
And just before merge it in a branch, I could decide to remove a lot of text and translation because I can add very efficient icons.

Your example is just perfect. This is why I don't take care of *.lang.php when I add features (ok... my last feature was a long time ago, but I remember my behavior very well).

If we consider that trunk main purpose is:

* adding new features
* having the freedom to change many things in existing code

I come to the conclusion that we should not care at all about l10n (I'm not saying that i18n should be forgotten, just l10n). English is enough on trunk.

Offline

 

#8 2009-10-30 00:55:32

plg
Piwigo Team
Nantes, France, Europe
2002-04-05
13790

Re: Manage translations between trunk and branch 2

nicolas wrote:

I think Vincent is right. But the main problem is to not forgot translations.

The idea to prefix vocab to be translated by /*TODO*/ is not a good idea. I prefer to have a word in english than a word prefixed by TODO.

I perfectly agree with you nicolas. The complex problem is "how to make have the list of new/updated strings to translate for each language". The /*TODO*/ solution is really a very poor solution.

nicolas: the /*TODO*/ method is not about having "/*TODO*/" in the string like this:

Code:

$lang['language_key'] = '/*TODO*/ temporary string';

it's:

Code:

/*TODO*/ $lang['language_key'] = 'temporary string';

But this solution is absolutely awful for the developer. Imagine you have 42 languages in Piwigo (only 17 or 18 today, certainly much more in the future), each time you update a string or add a key, you would have to modify 42 files :-/ It's just impossible to write this somewhere as the "recommended method to manage new/updated strings". I know it's a pragmatic solution for today because it's manual and we don't have spent the necessary time to manage this correctly, but let's discuss now and find a way to manage translations correctly, at technical level I mean.

nicolas wrote:

The main tools we need is a simple way to extract vocabulary to be translated.

I agree. By now, I don't know if we need a 3 hours coded tool (just a little PHP script) or if we should load our strings into a translation plateform like LaunchPad (need gettext PO files as input). The translation topic is a complex one, but fortunately it is a standard issue in the software world, no doubt other projects have already solved it. I'll investigate (you can do it too ;-)

Offline

 

#9 2009-10-30 01:02:21

plg
Piwigo Team
Nantes, France, Europe
2002-04-05
13790

Re: Manage translations between trunk and branch 2

The current behavior (Piwigo 2.0.5) when a string is missing is to display the key. As the key is 99% sure to be the same as the string (the value) in english, you may think you "fall back" on english, but that's not exactly the truth.

Offline

 

#10 2009-11-13 06:22:27

chaibolna
Member
2009-11-13
1

Re: Manage translations between trunk and branch 2

HI guys

Sharing translations between different releases  means that translations done in one release (e.g., trunk) would  as the result of migrating to this new way of managing translations. Here's what you do: You create a branch in Launchpad, describes all files that start with "widget-2

Thanks


[edit]
Delete links - not related Piwigo

Last edited by ddtddt (2009-11-13 07:14:39)

Offline

 

#11 2010-01-09 20:40:09

plg
Piwigo Team
Nantes, France, Europe
2002-04-05
13790

Re: Manage translations between trunk and branch 2

[Bugtracker] ticket 1374 : we want a pragmatic solution for the short term. It doesn't mean we won't switch to gettext + online translation plateform...

Offline

 
  •  » Translations
  •  » Manage translations between trunk and branch 2

Board footer

Powered by FluxBB

github twitter newsletter Donate Piwigo.org © 2002-2024 · Contact