js-shield
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Milestone Implement a translation workflow for the community


From: Libor Polčák
Subject: Milestone Implement a translation workflow for the community
Date: Mon, 28 Aug 2023 14:57:27 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0 SeaMonkey/2.53.17

Hello,

Michael, thank you for your list of translation tools. I went through the tools 
and I append my notes on the projects.

* Weblate
    * https://weblate.org/en/
    * https://github.com/WeblateOrg/weblate
Does the software support the i18n format used by webextensions?
- Yes https://docs.weblate.org/en/latest/formats/webextension.html
Advantages:
- Automatic integration with Pagure 
https://docs.weblate.org/en/latest/admin/continuous.html#pagure-setup
- Continuous localization 
https://docs.weblate.org/en/latest/admin/continuous.html#continuous-translation 
with notifications 
https://docs.weblate.org/en/latest/user/profile.html#subscriptions
- It seems that a project can have a glossary that is independent on the 
translation file https://docs.weblate.org/en/latest/user/glossary.html. When 
localizing JShelter I found a need to integrate one string into another string. 
This feature seems to help with the issue.
- several translation states with approvals etc. 
https://docs.weblate.org/en/latest/workflows.html#translation-states. Fuzzy 
matching could be a nice feature but I am not sure how it actually works.
- Can be integrated with various machine translators 
https://docs.weblate.org/en/latest/admin/machine.html
Things to consider:
- Looking at https://weblate.org/en/hosting/,I think that we do not have other option 
than the self-hosted platform. What puzzles me is the cross in the "Weblate 
upgrades" column. I want to interpret that we do need to update by ourselves. But a 
part of me says that we need to interpret it as updates are going to be tough. There is a 
docs page on upgrades https://docs.weblate.org/en/latest/admin/upgrade.html, so hopefully 
upgrades will go smoothly.
My preference:
Weblast looks like the best tool from the list but we should evaluate the 
software first


* OmegaT (offline)
    * https://omegat.org/
    * 
https://media.libreplanet.org/u/libreplanet/m/translators-and-free-software-a-practical-introduction-to-omegat/
Does the software support the i18n format used by webextensions?
- https://en.wikipedia.org/w/index.php?title=OmegaT&action=edit&section=6 
According to my brief searching, it seems that there is no direct support of 
webextensions JSON, there is likely a way to add own format
Advantages:
- As it is offline, we would not need to maintain the server.
- Seems to be used a lot by translators.
- Seems to include useful features like stemming, spellchecking, grammar 
checking an others
- glossaries 
https://omegat.sourceforge.io/manual-standard/en/chapter.panes.html#panes.glossary
- machine translations 
https://omegat.sourceforge.io/manual-standard/en/chapter.panes.html#panes.machinetranslation
Disadvantage:
- User need to download, it is Java application and could be missing in the 
repository or there is only an old version
- According to the LibrePlanet video, it seems that people need to spend time 
to set the program up. This might prevent translators to translate JShelter.
Uncertainties:
- Are there sth like workflows with the possibility to review translations of 
others? Status checking for multiple languages? Maybe team projects with a 
separate repository 
https://omegat.sourceforge.io/manual-standard/en/chapter.how.to.html#how.to.setup.team.project
My preference:
- I think that this will not suite us, let's explore other options



* Tolgee
    * https://github.com/tolgee/tolgee-platform/
    * 
https://media.libreplanet.org/u/libreplanet/m/software-localization-translation-of-web-based-projects/
Does the software support the i18n format used by webextensions?
I am not sure from the docs but it seems to aim at web projects
Advantages:
- In context translations https://tolgee.io/features/dev-tools#in-context (not 
sure if they would work with a webextension well, e.g. popup windows)
- translations memories 
https://tolgee.io/features/translation-assistance#translation-memory, machine 
translations 
https://tolgee.io/features/translation-assistance#machine-translation, auto 
translations https://tolgee.io/features/translation-assistance#auto-translation
- reviewing tools
Disadvantage:
- From the video, I get that our current approach to translations would need to 
be redone
- It seems less advanced compared to the tools above
My preference:
I fear that the approach does not work with webextensions



* Fluent
    * https://projectfluent.org/
    * https://github.com/projectfluent/fluent, I am not sure what is the 
difference between fluent and fluentjs 
https://github.com/projectfluent/fluent.js
Does the software support the i18n format used by webextensions?
AFAIU, this tool does not provide a way to manage the workflow of the 
translations but instead is a library that helps to add complex grammar 
structure. We have a couple of strings that would likely benefit from Fluent 
but right now it seems to me that fluent is not necessary to us




* Pontoon (Mozilla)
    * https://github.com/mozilla/pontoon/
    * https://pontoon.mozilla.org/
    * https://mozilla-l10n.github.io/localizer-documentation/
Advantages:
- terms looks like a glossary of tools above
- keeps history of translations
- automated translation suggestions from Machine Translation, Translation 
Memory and Terminology services.
Disadvantage:
- Seems to focus on mercurial
My preference:
Weblate seems to be better suited to me



* Translate Toolkit
    * https://github.com/translate/translate
    * https://toolkit.translatehouse.org/
Does the software support the i18n format used by webextensions?
Yes, 
http://docs.translatehouse.org/projects/translate-toolkit/en/latest/formats/json.html
Advantages:
Disadvantage:
- The feature list 
http://docs.translatehouse.org/projects/translate-toolkit/en/latest/features.html
 is missing some functionality that is available in other tools like machine 
translations, translation memory etc.
- It seems that the workflow needs converting the JSON to PO and back 
http://docs.translatehouse.org/projects/translate-toolkit/en/latest/commands/index.html
 - this might result in some lost information, however, the PO tools can be 
useful even if we do not use the toolkit as the primary tool
My preference:
We can use PO tools as a secondary tool



* Pootle (Unmaintained)
    * Formerly used by the GNU project.
    * https://github.com/translate/pootle/issues/6920



* Transifex
    * Not self-hostable, but would be gratis for our project.
    * https://www.transifex.com/open-source/
    * Used by NoScript.
Does the software support the i18n format used by webextensions?
It works for NoScript :)
Advantages:
- reviews available
- branch support
- Machine Translation, Translation Memory 
https://www.transifex.com/solutions/for-managers/
Disadvantages:
- Pagure is not listed as an option for intergration 
https://www.transifex.com/integrations/, however, we could use the old 
jsrestrictor github repository for the intergraion 
https://www.transifex.com/features/localization-automation/
- Webpages full of trackers


====

My personal preference is to try Weblate. Pontoon and Transifex looks like the 
next tools to look at if Weblate does not work for us.

Best wishes

Libor



reply via email to

[Prev in Thread] Current Thread [Next in Thread]