MantisBT - Ecere SDK
View Issue Details
0000858Ecere SDKi18npublic2013-04-24 13:572014-05-19 01:33
redj 
redj 
immediateminorhave not tried
closedfixed 
0.44.07 
0.44.10 640.44.10 64 
0000858: Translation templates (.pot) improvements
- Make .pot hierarchy match LaunchPad
- Have a separate Makefile rule (either still with 'ecs' but a different option, or different tool) to generate them

 We'll build them when we really want to (make pots?), and commit them all as one rather than dealing with neverending mismatches.
No tags attached.
related to 0001068new  Produce internationalization templates with a tool separate from ecs 
Issue History
2013-04-24 13:57redjNew Issue
2013-04-24 19:57jeromePrioritynormal => immediate
2013-05-01 02:44jeromeSummaryMake .pot hierarchy match LaunchPad => Translation templates (.pot) improvements
2013-05-01 02:44jeromeDescription Updated
2013-05-05 19:55redjNote Added: 0000792
2013-05-05 19:59jeromeStatusnew => assigned
2013-05-05 19:59jeromeAssigned To => jerome
2013-05-05 19:59jeromeAssigned Tojerome => redj
2013-05-05 20:58redjNote Edited: 0000792
2013-05-06 01:47redjAssigned Toredj => jerome
2013-05-06 01:47redjNote Added: 0000795
2013-05-06 01:51redjNote Edited: 0000792
2013-05-06 02:13jeromeNote Added: 0000797
2013-05-06 02:14jeromeNote Edited: 0000797
2013-05-06 02:17jeromeNote Added: 0000798
2013-05-06 02:17jeromeAssigned Tojerome => redj
2013-05-20 23:18redjNote Edited: 0000792
2013-05-22 23:28redjNote Edited: 0000792
2013-06-05 12:28redjNote Added: 0000882
2013-06-05 13:49jeromeNote Added: 0000884
2014-03-18 16:52jeromeTarget Version0.44.12 Fixes => 0.44.10 64
2014-03-18 16:54jeromeRelationship addedrelated to 0001068
2014-03-18 16:55jeromeNote Added: 0001203
2014-03-19 00:55jeromeStatusassigned => resolved
2014-03-19 00:55jeromeFixed in Version => 0.44.10 64
2014-03-19 00:55jeromeResolutionopen => fixed
2014-03-19 00:55jeromeNote Added: 0001204
2014-03-19 07:26jeromeNote Added: 0001205
2014-03-21 02:36jeromeNote Added: 0001206
2014-05-19 01:33jeromeStatusresolved => closed

Notes
(0000792)
redj   
2013-05-05 19:55   
(edited on: 2013-05-22 23:28)
implemented a solution in https://github.com/ecere/sdk/commit/2fd59c56d5af9808845cdb43600ae440554d1de9 [^]

(0000795)
redj   
2013-05-06 01:47   
Make .pot hierarchy match LaunchPad -- how do we do this? what is this?
(0000797)
jerome   
2013-05-06 02:13   
(edited on: 2013-05-06 02:14)
As per https://help.launchpad.net/Translations/YourProject/ImportPolicy?action=show&redirect=Translations%2FImportPolicy: [^]

Translation files should be in the same directory as the template to which they relate.
The translation files should be named for the appropriate language code: e.g. pt_BR.po Portugese as spoken in Brazil or fr.po for French as spoken in France. Launchpad only accepts languages that have an ISO 639 code.

There are two exceptions to this rule: English as spoken in the UK must be named en_GB.po and Chinese. Chinese exists in Launchpad only as three variants: Simplified Chinese (zh_CN), Traditional Chinese (zh_TW) and Hong Kong Chinese (zh_HK).

When naming translation files, you should leave out the country code if it is the primary or original country where that language is spoken. For example: pt for Portuguese, not pt_PT.


Sample directory layout
We recommend the standard GNU Gettext directory and file layout:


  template1/template1.pot
  template1/es.po
  template1/de.po
  ...
  template2/template2.pot
  template2/es.po
  template2/de.po

(0000798)
jerome   
2013-05-06 02:17   
It is quite different than our current directory layout, which has e.g.:

sdk\ecere\locale\zh_CN\LC_MESSAGES\ecere.po
sdk\ecere\locale\ecere.pot

We'll need to figure out what we need to change.
Ideally we still want our i18n library to read from the current format, but supporting the Launchpad layout would make it easier to import work from Launchpad translators (perhaps possibly even automatically).
(0000882)
redj   
2013-06-05 12:28   
btw, the way the disabling of .pot files generation by ecp/ecc was implemented
is an option. try the following:

mingw-make OUTPUT_POT=1

was broken, fixed by https://github.com/redj/ecere-sdk/commit/37fcf869da9ffa12229d8066bb6cd97ebf11f08b [^]
(0000884)
jerome   
2013-06-05 13:49   
This would require a clean though to output the pots, wouldn't it?

Theoretically, of only the .main.ec objects so that ecs gets run again, but in practice of everything since we don't have a rule to clean just that.

Anyways the whole thing shouldn't really be done by ecs, which is why one of the task would be to take that out and have a 'make pots' rule which just generates the templates. That's part 1 of this task.

Part 2 is to match up to the Launchpad layout so it's easy to bring in new translations. (And we can test it all out doing the french translation :))
(0001203)
jerome   
2014-03-18 16:55   
Since all of the original issues stated in the description are now within reach, further improvements will be handled by a separate issue ( 0001068 ).
(0001204)
jerome   
2014-03-19 00:55   
Implemented by:
https://github.com/ecere/ecere-sdk/commit/9e56821fdb1594cda2d16696e7905a8bc5debb06 [^]
(0001205)
jerome   
2014-03-19 07:26   
Tweaked with:
https://github.com/ecere/ecere-sdk/commit/53739dedd7b57936d350399e7fdbf503e23a702a [^]
(0001206)
jerome   
2014-03-21 02:36   
Tweaked by:
https://github.com/ecere/ecere-sdk/commit/06b38cad63411d2aed5354d1ce8d5807f95a8da8 [^]