Translation Management Tools

Description

Purpose: Discuss translation management needs and determine how we might address them.

Requirements:

  1. Ability to communicate what needs to be translated (or re-translated) to non-developers who are providing translations

  2. Ability for non-developers to enter their translations in an organized format/tool that can be imported by the system

  3. Other?

Environment

None

Potential Workaround

None

Checklist

hide

TestRail: Results

Activity

Show:

Cate Boerema September 22, 2017 at 11:03 AM

Thanks, . Can you please file a story for investigating how we can do this conversion? Please make it P2 and tag with for-next-sprint.

Julian Ladisch September 18, 2017 at 6:55 PM

React-intl is based von FormatJS which uses ICU Message syntax.

Most translation tools does not support ICU Message format. Conversion is needed, for example to .po format. This needs more some investigation.

Julian Ladisch September 14, 2017 at 2:37 PM

In addition to Weblate and Pootle there is a third notable open source translation management platform: Zanata - http://zanata.org/
Zanata has only a few projects that use it.

There are two commercial translation management platforms:

Transifex is free for open source software, but FOLIO allows proprietary modules and should allow croudsource translating of non-open-source modules. Elementary OS changed from Transifex to Weblate: https://medium.com/elementaryos/adios-transifex-weve-gone-to-weblate-59870dea06b2

2014 I run Pootle and hbz/GBV did some initial proof-of-concept German translation of the Kuali OLE software; I've also used Weblate. Pootle had some deficiencies regarding Glossary and import/export, Weblate is better.

What do others say?

https://gitlab.com/gitlab-org/gitlab-ce/issues/33521
Gabriel Mazetto: "1. Pontoon 2. Zanata 3. Weblate 4. Pootle"

https://github.com/wallabag/wallabag/issues/2511
Jibec: "Pootle, Zanata, Weblate. As seen from my translator experience and what I saw from other projects, Weblate is the simplest one".

https://help.nextcloud.com/t/translations-transifex/149/17
hook: "Having used all three before Transifex, Pootle and Weblate […] My vote in this order – higher up on the list is better: 1. Weblate 2. Pootle 3. Transifex"

My suggestion is that FOLIO hosts an own instance of Weblate.

Julian Ladisch September 14, 2017 at 1:42 PM

: I've split off your suggestions into separate issues: ,

Charles Lowell September 5, 2017 at 3:45 PM

Question: Have we evaluated React libraries that consume `.po` files directly so there's no need to have any intermediate format? like `react-i18n-gettext` or `react-translations`?

Charles Lowell September 5, 2017 at 3:37 PM

One concern brought up during the sprint demo was how translations could affect layout. This could be a good use-case for a tool like Percy https://percy.io/ which does visual diffs.

The idea would be to take a snapshot for each translation and make sure that when changes happen, they don't break layout.

Cate Boerema September 5, 2017 at 11:40 AM

These tools look really cool - thanks, Julian! Thoughts on next steps for selecting one?

Julian Ladisch September 4, 2017 at 11:04 PM

There are two open source online tools that help translators:

Pootle: http://pootle.translatehouse.org/ Example user is Koho: http://translate.koha-community.org/

Weblate: https://weblate.org/ Example users are Debian Handbook and phpMyAdmin: https://hosted.weblate.org/projects/debian-handbook/ https://hosted.weblate.org/projects/phpmyadmin/

Both Pootle and Weblate recommend to use the .po file format because it is the most widely used format and has the best support:
https://docs.weblate.org/en/latest/formats.html
http://docs.translatehouse.org/projects/translate-toolkit/en/latest/formats/index.html

There are at least two tools for the conversion between react-intl and the gettool po/pot files:
https://github.com/rubencosta/react-intl-gettext
https://github.com/evenchange4/react-intl-po

Cate Boerema September 4, 2017 at 2:31 PM

Just wanted to get the ball rolling on this discussion. As far as I understand it, the current translation process is pretty manual and something only a developer can do. I'd imagine there are libraries or tools that exist for this kind of thing. Maybe you know of some?

Done

Details

Assignee

Reporter

Labels

Priority

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs
Created September 4, 2017 at 2:29 PM
Updated November 12, 2018 at 2:23 PM
Resolved March 20, 2018 at 5:35 PM
TestRail: Cases
TestRail: Runs