Public pontoon

I’m trying to use fluent-rs and fluent-templates as this seems to be way more expressive than gettext. However I’m really struggling with tooling.

  • is there a public pontoon instance where I can register my project to?
    • if not how do I run an instance locally?
  • documentation on the workflow seems to be missing - at least I did not find any…
    • is there a way to automatically sync translated files
    • or even something to sync with the source code - adding new keys removing old ones etc.?

Help is very appreciated!

There’s no public instance of Pontoon. There are some third-party installs of Pontoon, there’s documentation on how to do that on heroku. More questions on Pontoon can be asked on the pontoon category on this discourse server.

Regarding workflow, I guess the best docs on that are in the Firefox docs. But might also be helpful.

In short:

There’s no sync of translated files. The l10n tools like Pontoon expose all strings found in the en-US files to localizers, and an untranslated string is one that’s plain missing in a localized file. When translated, it’ll be added by the tool to the localized file.

Pontoon also removes obsolete strings, but only when it writes new localizations to that file.



Thank you for your answer!

Pontoon on heroku requires a credit card which I don’t have…

ok so it seems that with pontoon the workflow is clear. For my small project I don’t want to run a big service like pontoon - especially since it is hard to install.

Are there easy to install possibly local alternatives to pontoon? If not I’ll just stick to the text editor.

Thanks again!

If your project is just a local project, text editor is probably the best way to go.

The problem with just using a text editor is that you’d have to remember to re-translate the strings in the other fluent files if you change the master. Translation services arrange this for you. I wonder if git could be used here – git can track what has changed between revisions, and a script might use that info to somehow mark the translation target strings.