On 23/03/17 04:39, Peng Wu wrote:
Hi,

  For TripleO UI project, some users requested to translate the web UI.
But some web UI string are from heat template files in tripleo-heat-
templates project.

  In order to get translated templates displayed in tripleo-ui, we
propose a blueprint as follows, which needs to change code in heat,
tripleo-heat-tempates and tripleo-ui projects.

  I18n proposal for heat templates 'description' help strings

  1. Update heat project to accept "translation-domain" header in
RESTful request, like "translation-domain: tripleo-heat-templates"

     a. With "translation-domain" header, heat will try to translate
"title" and "description" field using "tripleo-heat-templates.po"

     b. Without "translation-domain" header, heat will return the
fields like before

     c. Add some field in config file for security to have a list of
        allowed "translation-domain",
        like "allowed-translation-domains: ['tripleo-heat-templates',
...]"

I agree with Thomas, Heat is the _last_ place you should be looking to do the translation. Personally, I think this is yet another entry in a long list of "why TripleO should generate its Heat templates". (Some of the templates are actually preprocessed with Jinja2 now, so it may be possible to work translation in there.) A poor substitute for that might be to translate stuff in the TripleO UI itself. What will never ever make sense is for Heat to include a list of strings that might possibly have occurred in application templates at some point in the past and their translations.

  2. Update tripleo-heat-templates to generate the translation files,
     like "tripleo-heat-templates.pot"

     a. May need to write python script to extract "title" and
"description" field from yaml files

     b. May need to integrate into python babel config or use separate
po files


  3. Update tripleo-ui to use locale API with "translation-domain"
header to ask the RESTful response with translated "title" and
"description" fields from heat services

     a. tripleo-ui will send request with two additional headers:
        "Accept-Language" and "translation-domain: tripleo-heat-
templates"

  Please evaluate it, thanks!

Regards,
  Peng

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: [email protected]?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: [email protected]?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to