Pontoon is a web-based, What-You-See-Is-What-You-Get (WYSIWYG), localization (l10n) tool. At Mozilla, we use Pontoon to localize all Mozilla products and websites, ranging from Firefox to Mozilla.org. Pontoon is a very simple and intuitive tool that requires little to no technical skill to use in the l10n workflow. Here we'll discuss how to use Pontoon to localize projects, from first sign-in to finalizing your contributions. Along the way, we'll point out some sweet features that will make you more efficient and make your l10n contributions easier.
Are you a developer? Read about implementing Pontoon in your project or learn how to get involved on GitHub.
First steps
Pontoon's home page is very easy to use. To begin localizing the project, click on the Persona icon and sign in. Next, simply select the project you want to work on and your locale from the dropdown menus. Pontoon will automatically open that locale's project for you to get started. Note that for our purposes here, we'll be using Firefox Affiliates website to demo Pontoon's functionality and workflow. And there it is, opened inside Pontoon:
Main toolbar
As you can see, most of the interface is taken by the website being translated. Only the toolbar on top belongs to Pontoon, containing the following items (from left to right):
List of strings
Opens a sidebar with a list of all strings to localize.
Project selector (Affiliates)
Switches between projects to localize.
Resource selector (Homepage)
Switches between project resources to localize, like subpages or localization files. Hidden if no resources available for project.
Locale selector (Slovenian)
Switches between languages to localize.
Go
Opens project-resource-locale selection.
Progress indicator
Displays your progress on the resource being localized. More details are available in the popup.
User menu
Allows for user-specific tasks, like commiting to repository, downloading files and signing out.
Info menu
Gives important information, like the anticipated project timeline and a list of keyboard shortcuts.
Alright, how about we do some translating now?
Translate strings
When using Pontoon for localization, you have a couple of options to translate your strings. You can translate in-context, out-of-context, or a combination of the two. We'll start with looking at in-context translation.
In-context
Pontoon's in-context translation mode is what puts it above others. It opens a web page (or web app) and enables real-time editing of that page. Here's how you translate your first string:
- Hover over the text you want to translate with your mouse.
- An edit button appears over that text. Click on it to enable the translate mode.
- Replace the original text with its translation into your language.
- Click the save button to save your translation.
Out-of-context
Some strings are impossible to translate in-context, e.g. the contents of the <title> tag in websites and strings with placeables or different plural forms. By clicking on the hamburger icon in the main toolbar, a list of all strings and available translations will open in the sidebar. You can also use the sidebar for out-of-context localization:
- Click on the string you'd like to translate.
- Translation panel with original string and its details (e.g. comments) opens.
- Translate the string in the translation area below.
- Click the save button to save your translation.
As you translate strings out-of-context, translations will also appear in website, if they could also be translated in-context.
Translation helpers
As you can see, suggestions from history, translation memory, machine translation and other locales are also available in the out-of-context translation panel. We call all of these translation helpers and here's how each of them will help you as you translate strings:
History
Displays previously suggested translations, including from other users.
Machinery
Displays matches from various services: internal translation memory, Mozilla Transvision, open source translation memory, Microsoft terminology and machine translation.
Other locales
Displays matching translations from other locales.
Search
Almost like machinery, but takes provided keyword as input parameter instead of the original string.
By clicking a suggestion, it gets copied into translation area.
Publishing your localization
Suppose you now want to publish your l10n work by committing it to a repo. Pontoon lets you do that too! Actually, it does that for you by automatically syncing with repositories on hourly basis. You can now pat yourself on the back, do a little dance, go to sleep or do something else to celebrate your work!