How to unleash the full power of Fluent as a localizer

Fluent is an extremely powerful system, providing localizers with a level of flexibility that has no equivalent in other localization systems. It can be as straightforward as older formats, thanks to Pontoon’s streamlined interface, but it requires some understanding of the syntax to fully utilize its potential.

Here are a few examples of how you can get the most out of Fluent. But, before jumping in, you should get familiar with our documentation about Fluent syntax for localizers, and make sure to know how to switch to the Advanced FTL mode, to work directly with the syntax of each message.

Plurals

Plural forms are a really complex subject; some locales don’t use any (e.g. Chinese), English and most Romance languages use two (one vs many), others use all the six forms defined by CLDR (e.g. Arabic). Fluent gives you all the flexibility that you need, without forcing you to provide all forms if you don’t need them (unlike Gettext, for example).

Consider this example displayed in Pontoon for Arabic:

Screenshot of a plural string in Pontoon for ArabicThe underlying reference message is:

# Variables:
# $numBreachesResolved (Number) - Number of breaches marked as resolved by the user on Monitor.
# $numBreaches (Number) - Number of breaches in which a user's data was involved, detected by Monitor.
monitor-partial-breaches-title =
    { $numBreaches ->
       *[other] { $numBreachesResolved } out of { $numBreaches } breaches marked as resolved
    }

You can see it if you switch to the FTL advanced mode, and temporarily COPY the English source.

This gives you a lot of information:

  • It’s a message with plurals, although only the other category is defined for English.
  • The other category is also the default, since it’s marked with an asterisk.
  • The value of $numBreaches defines which plural form will be used.

First of all, since you only have one form, you can decide to remove the select logic completely. This is equivalent to:

monitor-partial-breaches-title = { $numBreachesResolved } out of { $numBreaches } breaches marked as resolved

You might ask: why is there a plural in English then? That’s a great question! It’s just a small hack to trick Pontoon into displaying the UI for plurals.

But there’s more: what if this doesn’t work for your language? Consider Italian, for example: to get a more natural sounding sentence, I would translate it as “10 breaches out of 20 marked as resolved”. There are two issues to solve: I need $numBreachesResolved (number of solved breaches) to determine which plural form to use, not the total number, and I need a singular form. While I can’t make these changes directly through Pontoon’s UI, I can still write my own syntax:

monitor-partial-breaches-title =
    { $numBreachesResolved ->
        [one] { $numBreachesResolved } violazione su { $numBreaches } contrassegnata come risolta
       *[other] { $numBreachesResolved } violazioni su { $numBreaches } contrassegnate come risolte
    }

Notice the two relevant changes:

  • There is now a one form (used for 1 in Italian).
  • $numBreachesResolved is used to determine which plural form is selected ($numBreachesResolved ->).

Terms

We recently started migrating mozilla.org to Fluent, and there are a lot of terms defined for specific feature names and brands. Using terms instead of hard-coding text in strings helps ensure consistency and enforce branding rules. The best example is probably the term for Firefox Account, where the “account” part is localizable.

-brand-name-firefox-account = Firefox Account

In Italian it’s translated as “account Firefox”. But it should be “Account Firefox” if used at the beginning of a sentence. How can I solve this, without removing the term and getting warnings in Pontoon? I can define a parameterized term.

-brand-name-firefox-account =
    { $capitalization ->
       *[lowercase] account Firefox
        [uppercase] Account Firefox
    }

In this example, the default is lowercase, since it’s the most common form in Italian. By using only the term reference { -brand-name-firefox-account }, it will be automatically displayed as “account Firefox”.

login-button = Accedi al tuo { -brand-name-firefox-account }

What if I need the uppercase version?

login-title = { -brand-name-firefox-account(capitalization: "uppercase") }

You can find more information about terms, as well as other examples, in our documentation. And don’t forget to check the rules about brand names.

Things you shouldn’t translate

Variables and placeables should not be translated. The good news is that they’re easy to spot, since they’re surrounded by curly parentheses:

  • Variable reference: { $somevariable }
  • Term reference: { -someterm }
  • Message reference: { somemessage }

The content between parentheses must be kept as in the English source string.

The same is valid for the data-l10n-name attribute in HTML elements. Consider for example:

update-downloading = <img data-l10n-name="icon"/>Downloading update — 

The only thing to translate in this message is “Downloading update -”. “Icon” and “download-status” should be kept untranslated.

The rule of thumb is to pay extra attention when there are curly parentheses, since they’re used to identify special elements of the syntax.

Another example:

menu-menuitem-preferences =
   { PLATFORM() ->
       [windows] Options
      *[other] Preferences
   }

PLATFORM() is a function, and should not be translated. windows and other are variant names, and should be kept unchanged as well.

One other thing to look out for are style attributes, since they’re used for CSS rules.

downloads-panel-list =
    .style = width: 70ch

width: 70ch is a CSS rule to define the width of an element, and should be kept untranslated. The only thing that you might want to change is the actual value, for example to make it larger (width: 75ch). Note that ch is a unit of measure used in CSS.

Bringing terminology support to Pontoon

Terminology is a group of specialized words, compound words or multi-word expressions (terms) relating to a particular field. We’ve recently shipped the ability to store such terms in Pontoon, and now they’ve become conveniently integrated into the translation workbench.

Terminology in Pontoon

Motivation

By integrating terminology, we wanted to bring improvements to the translation process in several areas:

  • Localization consistency. It’s hard to expect all authors to always use the same translations for the same words and phrases without any help from the tool.
  • Translation pace. Until now, localizers had to manually search for existing translations of terms found in the strings they are translating.
  • Content comprehension. The meaning of specific expressions is not always clear, especially if the comment isn’t provided.
  • Brand translation. Trademarks present a special case for localization as they have legal and semantic significance, and often come with localization constraints.

How does it work?

Terms are highlighted in the original string, similarly to how we highlight placeables. On click a popup appears with a list of matching terms and corresponding metadata (part of speech, definition, usage example and translation). By clicking any of the terms in the list, term translation gets inserted into the editor.

We’ve also added the Terms panel in the 3rd column, which behaves similarly as the popup, but contains all the terms found in the string. Since this is now the 4th panel in the right column, we’ve split it in half, so that two panels can be visible at the same time (Terms and Machinery by default).

Next steps

The list of terms and their metadata is jointly maintained by several teams across Mozilla. Term translations are currently only available for a small set of locales, but we’re already working on the ability to establish a process for all locales to provide translations. Stay tuned!

In the mid term we also plan to:

  • Make terms available in a public repository in a standardized format for each locale.
  • Add the ability for localizers to propose new terms.
  • Include terms in our quality checks.

L10n Report: April 2020 Edition

Please note some of the information provided in this report may be subject to change as we are sometimes sharing information about projects that are still in early stages and are not final yet. 

Before we get into the report, we must share that Youghourta Benali, one of the Arabic l10n community’s managers, has passed away due to prior health issues. He was a passionate activist for the open Web and Arabic’s presence on the Web, localizing Mozilla projects for over 7 years. We’ll all miss him and wish his family and friends peace at this time. The surviving Arabic managers are currently writing a guest post that we’ll post here when ready.

Welcome!

Are you a locale leader and want us to include new members in our upcoming reports? Contact us!

New community/locales added

Other updates

Enforcing 2 factors authentication in GitHub for mozilla-l10n

As recently communicated in our mailing lists, on April 27 we will enforce the 2 factor authentication (2FA) in GitHub for the mozilla-l10n organization.

If you are part of the mozilla-l10n organization, but don’t have 2FA enabled, you will be automatically removed. This won’t prevent you from opening pull requests or filing issues, for example, and you will be able to rejoin (if you want) after enabling 2FA.

As explained in the original announcement, a lot has changed since we started using GitHub for Mozilla Localization, almost 5 years ago. We have consolidated contribution paths to l10n to Pontoon, and having direct access to repositories is not necessary anymore. Write access is already not allowed for some repositories, since formats are not user-friendly and can be properly managed only through localization tools.

For more information about enabling 2FA in GitHub, refer to this document.

Call to clean up Pontoon projects

We have seen that Pontoon contains a handful of projects per community that receive a lot of unreviewed translations. Many of these are low priority projects that the active and core community members have not contributed to in around a year. We’re asking locale managers to review their list of enabled projects in Pontoon and select projects you’re all willing to deactivate. We will be communicating with managers shortly to determine which projects we should deactivate for your locale.

New content and projects

What’s new or coming up in Firefox desktop

Upcoming deadlines:

  • Firefox 76 is currently in beta and will be released on May 5. The deadline to update localization has just passed (April 21).
  • The deadline to update localizations for Firefox 77, currently in Nightly, will be May 19 (4 weeks after the previous deadline).

As explained in previous editions of the l10n report, In terms of localization priority and deadlines, note that the content of the What’s new panel, available at the bottom of the hamburger menu, doesn’t follow the release train. For example, content for 76 has been exposed on April 15, but it will be possible to update translations until the very end of the cycle, beyond the normal deadline for that version. You can find these strings in the asrouter.ftl file in Pontoon.

To test on Nightly:

  • Type about:config in the address bar and press enter. Click the button to accept the risk and continue.
  • Search for browser.newtabpage.activity-stream.asrouter.devtoolsEnabled and make sure that it’s set to true (double click it if it’s false). This will enable a new wrench icon in the New Tab page.
  • Search for browser.newtabpage.activity-stream.asrouter.useRemoteL10n and set it to false. This will force the browser to use translations available in the build, instead of translations hosted remotely (those are updated less frequently). It’s important to use Nightly and not Beta for this.
  • Open a New Tab, click on the wrench icon in the top right corner. This should open the about:newtab#devtools page. On the left sidebar, click on What’s New Panel, then click the button Open What’s New Panel.

There is also a new warning for vulnerable passwords in about:logins. You can find information on how to trigger this warning in this page.

What’s new or coming up in mobile

Firefox iOS

  • The l10n cycle for Firefox for iOS v25 ends 27 April.
  • New screenshots have been added to the project landing page in Pontoon.

Fenix

The Fenix launch continues to be a high priority for Mozilla. The date of that launch will depend on the outcome of a handful of experiments. In the meantime, string updates should be minimal, and we continue to aim for shipping all locales that are present on Fennec.

Milestones

  • Feature complete date: to be announced when set
  • Source string freeze date: to be announced when set
  • Localized string freeze date: estimated to be July
  • Fenix launch date: no sooner than July

Current progress

  • Current average Fenix completion percentage across all locales: 74% (1% increase)
  • Target average completion percentage across all locales: 90%

Just a reminder, you can find the Fenix Nightly builds in the Google Play Store for testing your localization. Please take the time to test! Your language will appear in the app settings once you begin localizing the project in Pontoon and the Fenix team imports your locale into the build process. If you don’t localize the project, your language will not appear in the builds. Please note that at least Android 5 is necessary to use and test Fenix on an Android device.

What’s new or coming up in web projects

Mozilla.org

There have been a few updates since the last report. The following two are new:

  • firefox/whatsnew_76.lang: the page is due on 26 April for these locales: de, en-CA, en-GB, and fr. Other locales are nice to have, with a fallback to WNP.
  • firefox/enterprise/index.lang.

Legal Documentation

The following languages for the Common Voice project have reached the milestones that require legal documents for Privacy Notice and Terms of Use. They are still in the work as we speak. If you are interested in reviewing them, the documents will be ready by early next week. Please note, any review feedback requires a peer review before being pushed to production.

Newly added languages: Abkhaz, Arabic, Assamese, Greek, Czech, Frisian, Indonesian, Japanese, Latvian, Maltese, Punjabi (India), Polish, Portuguese (pt-BR), Romansh (for Romansh Sursilvan & Romansh Vallader), Romanian, Slovenian, and Ukrainian

Events

We planned to organize multilocale workshops again for this year. With country closures, COVID-19 outbreaks, and the long road to economic recovery for industries we rely on for the logistics of these events, we have decided to cancel these workshops for 2020. We’re working to figure out a suitable replacement for these in-person events in 2020, stay tuned. We will revisit in October to determine what we can do for 2021.

As you’ve seen from the Mozilla Reps, they’ve made some changes to the event funding process to respect local effects of COVID-19. Effectively, if your local government has issued a quarantine or shelter-in-place order, please respect those orders and cancel your Fenix l10n hackathon. If that does not apply to you, you can still organize a local hackathon. I have created an event in the new community portal for Fenix localization. If you would like to organize a local l10n hackathon in the coming weeks to bring your locale to 100% complete, please reach out to a Resource Rep. Budget requests from Resource Reps for under USD$100 will be fast-tracked for approval.

Friends of the Lion

Image by Elio Qoshi

Know someone in your l10n community who’s been doing a great job and should appear here? Contact on of the l10n-drivers and we’ll make sure they get a shout-out (see list at the bottom)!

Useful Links

Questions? Want to get involved?

Did you enjoy reading this report? Let us know how we can improve by reaching out to any one of the l10n-drivers listed above.

L10n Report: March Edition

Please note some of the information provided in this report may be subject to change as we are sometimes sharing information about projects that are still in early stages and are not final yet. 

Welcome!

New localizers

Are you a locale leader and want us to include new members in our upcoming reports? Contact us!

L10n Community in Matrix

As you might have read in the past weeks, Mozilla turned off IRC and officially switched to a new system for synchronous communications (Matrix), available at: https://chat.mozilla.org/

We have a channel dedicated to l10n community conversations. You can also join the room, after creating an account in Matrix, by searching for the “l10n-community” room.

You can find detailed information on how to access Matrix via browser and mobile apps in this wiki page: https://wiki.mozilla.org/Matrix

Messages written in Matrix are also mirrored (“bridged”) to the “Mozilla L10n Community” Telegram channel.

New content and projects

What’s new or coming up in Firefox desktop

As explained in the last l10n report, Firefox is now following a fixed 4-weeks release cycle:

  • Firefox 75 is currently in beta and will be released on April 7. The deadline to update localization has just passed (March 24).
  • Firefox 76, currently in Nightly, will move to Beta when 75 is officially released. The deadline to update localizations for that version will be April 21 (4 weeks after the current deadline).

In terms of upcoming content to localize, in Firefox 76 there’s a new authentication dialog, prompting users to authenticate with the Operating System when performing operations like setting a master password, or interacting with saved passwords in about:logins. Localizing this content is particularly challenging on macOS, since only part of the dialog’s text comes from Firefox (highlighted in red in the image below).

Make sure to read the instructions on the dev-l10n mailing list for some advice on how to localize this dialog.

What’s new or coming up in web projects

Mozilla.org

A lot of pages were added in the last month. Many are content heavy. Make sure to prioritize the pages based on deadlines and the priority star rating, as well as against other projects.

New and highest priority:
  • firefox/whatsnew_75.lang (due on 27 March, 3pm UTC)
  • firefox/welcome/page6.lang
  • firefox/welcome/page7.lang
Updates and higher priority:
  • mozorg/404.lang
  • mozorg/500.lang
New and lower priority:
  • firefox/compare.lang
  • firefox/compare/chrome.lang
  • firefox/compare/edge.lang
  • firefox/compare/ie.lang
  • firefox/compare/opera.lang
  • firefox/compare/safari.lang
  • firefox/compare/shared.lang

Firefox Accounts:

New content will be ready for localization on a weekly basis, currently released on Fridays.

Web of Things

After the month of March, the team will cease active development. However, they will push translated content to production from time to time.

What’s new or coming up in Foundation projects

The localization of *Privacy Not Included has started! Privacy Not Included is Mozilla’s attempt, through technical research, to help people shop products that are safe, secure and private. The project has been enabled on Pontoon and a first batch of strings has been made available. You can test your work on the staging website, updated almost daily. For the locales that have access to the project, you can also opt-in to localize the About section. If you’re interested, reach out to Théo. Not all locales can translate the project yet but the team is exploring technical options to make it happen. The next edition of the guide is scheduled for this fall, and more content will be exposed over time.

MozFest is moving to Amsterdam! After 10 years in London, the Mozilla Festival will move to Amsterdam for its next edition in March 2021. The homepage is now localized, including in Dutch, and support for Frisian will be added soon. The team will make more content available for localization during the time leading to the next festival edition.

What’s new or coming up in SuMo

The SUMO team is going to decommission all old SUMO accounts by the 23rd of March 2020.  If you have an account on SUMO, please take action to migrate it to the Firefox Accounts.

In order to migrate to Firefox Account, it’s better to always start by logging in to your old account and follow the prompt from there. Please read the FAQ and ask on this thread if you have any questions.

What’s new or coming up in Pontoon

Introducing comments

We’ve shipped the ability to add comments in Pontoon. One of the top requested features enables reviewers to give feedback on proposed suggestions, as well as facilitates general discussions about a specific string. Read more on the feature and how to use it on the blog.

Huge thanks to our Outreachy intern April Bowler who developed the feature, and many Mozilla L10n community members who have been actively involved in the design process.

Pre-translation and post-editing

We’re introducing the ability to pre-translate strings using translation memory and machine translation. Pre-translations are marked on dashboards as needing attention, but they end up in repositories (and products). Note that the feature will go through substantial testing and evaluation before it gets enabled in any of the projects.

Thanks to Vishal for developing the feature and bringing us closer to the post-editing world.

Word count

Thanks to Oleksandra, Pontoon finally got the ability to measure project size in words in addition to strings. The numbers are not exposed anywhere in the UI or API yet. If you’re interested in developing such feature, please let us know!

Events

Want to showcase an event coming up that your community is participating in? Reach out to any l10n-driver and we’ll include that (see links to emails at the bottom of this report)

Friends of the Lion

Know someone in your l10n community who’s been doing a great job and should appear here? Contact one of the l10n-drivers and we’ll make sure they get a shout-out (see list at the bottom)!

Useful Links

Questions? Want to get involved?

 

Did you enjoy reading this report? Let us know how we can improve by reaching out to any one of the l10n-drivers listed above.

Introducing comments in Pontoon

We’ve just shipped the ability to add comments in Pontoon. One of the top requested features enables reviewers to give feedback on proposed suggestions, as well as facilitates general discussions about a specific string.

The feature consists of two pieces. Let’s have a closer look at them.

Screenshot of Pontoon with translation comments, and source comments1. Translation comments

Until now, the review process has been strictly binary, with “Approve” and “Reject” being the only actions available, which made it hard for translation authors to learn from reviewers. With comments now available, reviewers are encouraged to pass knowledge onto translation authors by providing clarifications and advice.

Each translation in the History panel now includes the “Comment” button located in front of the review buttons, which allows you to comment on that particular translation. Reviewers can use it to explain why the translation got approved, rejected or replaced, as well as provide advice to the author.

In addition to reviewers, translation authors and other users can also submit translation comments, for example to ask for advice or to justify their suggestion.

2. Original string comments

But what if you want to discuss how to translate a string before any suggestions are even made? For that purpose we’ve introduced the “Comments” tab in the 3rd column, next to the Machinery and Locales tabs. There you can add comments bound to the original string in general, not one of its translations.

Note that these comments are only visible on the translate page of the locale they were submitted in. We are however already working on the ability for the Project Managers to “Pin” comments, which will make them visible globally across all locales. That feature will also include the ability for localizers to request more context or report an issue in the source string. Stay tuned!

Discoverability of comments

Since we don’t show comments on dashboards, they aren’t really discoverable. That’s why we’ll send notifications to all relevant users once the comment is submitted, e.g. to everyone in the comment thread and translation authors and reviewers. Original string comment notifications will also be sent to team managers and translators.

What’s next?

This feature has been developed as part of the Outreachy internship by our amazing intern April Bowler. We’re very happy that even after the internship she continues to work on the followup features mentioned above, namely the ability to “Pin” comments and the ability to request context & report issue. User mentions are also coming as part of that.

I’d like to thank April for the great work she has done implementing this feature. I’d also like to thank many of our Mozilla L10n community members, who have been actively involved in the designing process.

L10n Report: February Edition

Welcome!

Please note some of the information provided in this report may be subject to change as we are sometimes sharing information about projects that are still in early stages and are not final yet. 

New localizers

  • Bora of Kabardian joined us through the Common Voice project
  • Kevin of Swahili
  • Habib and Shamim of Bengali joined us through the WebThings Gateway project

Are you a locale leader and want us to include new members in our upcoming reports? Contact us!

New community/locales added

Continue reading …

L10n Report: December Edition

Please note some of the information provided in this report may be subject to change as we are sometimes sharing information about projects that are still in early stages and are not final yet. 

New community/locales added

  • Kabardian

New content and projects

What’s new or coming up in Firefox desktop

Firefox 72 is currently in Beta. The deadline to ship localization changes in this version is approaching fast, and will be on December 24th. For the next version, the deadline will be on January 28th.

Most of the new strings are in the onboarding and Content Feature Recommendations (CFR). You can see them in the What’s New panel in the app menu.

What’s new or coming up in mobile

There is a lot going on with mobile these days, especially in regards to the transition of Firefox for Android browser (internal name Fennec) to a brand new browser (currently Firefox Preview, internal name Fenix).

Since the transition is expected to happen some time early 2020 (exact plans are still being discussed internally), we wanted to make a call to action to localizers to start now. We are still waiting for the in-app language switcher to be implemented, but since it is planned for very soon, we think it’s important that localizers get access to strings so they can complete and test their work in time for the actual release of Fenix (final name to be determined still).

The full details about all this can be found in this thread here. Please reach out directly to Delphine in order to activate Fenix in Pontoon for your locale (requests from managers only please), or if you have any questions.

Looking forwards to the best localized Android browser yet!

What’s new or coming up in web projects

Mozilla.org

We added a few more pages recently. Though some pages are quite long, they do contain a lot of useful information on the advantages of using Firefox over other browsers. They come in handy when you want to promote Firefox products in your language.

New:

  • firefox/compare.lang
  • firefox/windows-64-bit.lang
  • firefox/welcome/page5.lang

Updates:

  • firefox/campaign-trailhead.lang
  • firefox/new/trailhead.lang
  • firefox/products/developer-quantum.lang

WebThings Gateway

This is a brand new product. The Mozilla WebThings is an open platform for monitoring and controlling devices over the web. It is a software distribution for smart home gateways focused on privacy, security and interoperability.Essentially, it is a smart home platform for bridging new and existing Internet of Things (IoT) devices to the web in a private and secure way.

More information can be found on the website. Speaking of the website, there is a plan to make the site localizable early next year. Stay tuned!

The initial localized content was imported from GitHub, content localized by contributors. Once imported, the localized content is by default in “translated” state. Locale managers and translators, please review these strings soon as they go directly to production.

What’s new or coming up in SuMo

This past month has been really busy for the community and for our content manager, we got new and updated articles for Firefox 71 on desktop and the release of many products on mobile: Firefox Preview and Firefox Lite.

Following is a selection of interesting new articles that have been translated:

Newly published localizer facing documentation

Style Guides:

Obsolete:

The Mozilla Localization Community page on Facebook has shut down. To find out how this decision was reached, please read it here.

Events

Three localization events were organized this quarter.

  • The Mozilla Nativo Workshop was held on the 28th – 29th of October in Antigua Guatemala. Localizers from nine localization communities attended the event.
  • The Bengali localization workshop took place in Dhaka, Bangladesh on the 9th – 10th of November. The details of the event were well documented by two l10n contributors in their blogs:  Tanha Islam and Monirul Alom.

    Bengali localization community

The weekend event was widely reported in the local press and social media in Bengali:

    • http://bit.ly/2r26ENr
    • http://bit.ly/2OpEZOy
    • https://www.be.bangla.report/post/45498-cfmmKTlib
    • http://bit.ly/2XrBJ9i
    • http://bit.ly/2CU1ciq
    • https://techshohor.com/161802/
  • The Arabic localization meetup was organized in Tunis, Tunisia on the 6th – 7th of December. The hosting community welcomed visiting localization contributors from Bahrain, Jordan, and Palestinian territories. During the two day workshop, the attendees discussed major challenges facing the geographically distributed community, identified better ways to collaborate, and steps and process to onboard and retain new contributors.

Want to showcase an event coming up that your community is participating in? Reach out to any l10n-driver and we’ll include that (see links to emails at the bottom of this report)

Friends of the Lion

  • Kudos to Safa, one of the Arabic locale managers, who single handedly reviewed more than 500 pending suggestions, reviewed and updated the usage of Mozilla brands in Firefox desktop product. He is also leading the effort to improve communications between community members and new contributor onboarding process. Keep up with the good work!

Know someone in your l10n community who’s been doing a great job and should appear here? Contact on of the l10n-drivers and we’ll make sure they get a shout-out (see list at the bottom)!

Useful Links

Questions? Want to get involved?

Did you enjoy reading this report? Let us know how we can improve by reaching out to any one of the l10n-drivers listed above.

Move nav bar to the top   

Agregamos la funcionalidad de traducir desde un idioma fuente alternativo en Pontoon

This article also exists in English.

¿Te gustaría localizar Firefox a tu idioma nativo, pero no mucha facilidad con el inglés como idioma fuente? Si entiendes otro idioma en el que se localiza Firefox, tenemos buenas noticias para ti.

En el último lanzamiento, Pontoon agregó soporte para el uso de localizaciones como cadenas fuentes. En lugar de la cadena original (en inglés), las traducciones del idioma fuente preferido se utilizarán en la lista de cadenas y en el panel de cadenas de origen.

Si todavía no hay una traducción disponible, mostraremos la cadena original, que también estará siempre disponible en el panel “Locales” si se utiliza el idioma fuente alternativo.

Your preferred source locale is used in the string list and the source string panel. You can see the original (English) string in the Locales panel.

Ejemplo del uso del español (es-ES) como idioma fuente para el guaraní.

Para seleccionar un idioma fuente alternativo, va a los ajustes de perfil y elige el idioma fuente preferido. Si quisieras la cadenas originales del proyecto (o sea, el inglés estadounidense) elige “Default project locale”.

Select your preferred source locale in settings

Se encuentra la preferencia de idioma fuente alternativo en los ajustes.

April Bowler es quien desarrollo esta funcionalidad. April nos va a acompañar como ingeniero de prácticas Outreachy del 3 de diciembre 2019 al 3 de marzo 2020. Gracias a las contribuciones de 8 candidatos Outreachy fantásticos, se han resuelto un enorme 40 bugs. Nos emocionamos para ver qué otras mejoras vienen de April en los meses siguientes.

Esperamos que esta última mejora ayudará a ampliar la localización de Firefox y otros productos más allá de los localizadores anglo-hablantes. Como siempre, si tienes alguna sugerencia para mejoras o cualquier duda, déjanos saberlo.

Using alternative source language in Pontoon

This blog post has been authored in English and translated to Spanish to address Pontoon users who are most impacted by this new feature.

Would you like to localize Firefox to your native language, but you don’t feel confident in using English as a reference language? If you understand another language Firefox is localized into, we have news for you.

In its latest release, Pontoon added support for using localizations as source strings. Instead of the original (English) string, translations from your preferred source locale will be used in the string list and the source string panel.

If a translation isn’t available yet, we’ll show the original string, which will also always be available in the Locales panel if the alternative source locale is used.

Your preferred source locale is used in the string list and the source string panel. You can see the original (English) string in the Locales panel.

Using Spanish (es-ES) as the source locale during localization of Firefox to Guarani (gn).

To use the alternative source locale, simply go to your Settings and select your preferred source locale. If you want to use the original strings used by the project (usually English), select “Default project locale”.

Select your preferred source locale in settings

Select your preferred source locale in your Settings.

This feature has been developed by April Bowler, who will be our intern in the Outreachy Round 19, which runs from December 3rd, 2019 to March 3rd, 2020. A whopping 40 bugs have been fixed by 8 outstanding contributors during the Outreachy contribution period and we can’t wait to see what April will come up within the next months.

We hope this latest addition will extend the localization of Firefox and other projects localized on Pontoon beyond English-speaking localizers. As always, if you have suggestions for improvements or run into issues, please let us know.

L10n Report: November Edition

Please note some of the information provided in this report may be subject to change as we are sometimes sharing information about projects that are still in early stages and are not final yet. 

Welcome!

Are you a locale leader and want us to include new members in our upcoming reports? Contact us!

New content and projects

What’s new or coming up in Firefox desktop

As anticipated in previous reports, the release cycles are getting progressively shorter, in order to reach a consistent 4 weeks length in the first half of 2020.

Firefox 71 will be released next week, on December 3rd. At that point Firefox 72 will move to beta, and the deadline to ship updates for that version will be on December 24th.

Firefox 71 will ship with 3 new languages: Catalan (Valencian) (ca-valencia), Tagalog (tl), and Triqui (trs).

Compared to Firefox 70, the last release has been relatively light in terms of new strings to translate. That’s a great time to do a full test of your localization, to make sure everything works as expected, in particular for new users switching – or coming back – to Firefox.

What’s new or coming up in mobile

As most of you know, Fenix (Firefox Preview) has been an ongoing and ever evolving priority at Mozilla, as we work on creating the best Android mobile browser yet. The transition to Fenix is amplifying as we see its positive impact grow among our users. Be ready for something big early 2020, as our efforts are ramping up dramatically.

If you are interested in localizing Fenix, please reach out to delphine so she can get things going (please note there is not yet a locale-switcher in place, so you should be sure your locale is supported by Android system).

Talking about in-app locale switcher for Fenix, work is currently happening on that front and should be ready by the beginning of next year. Which means we will be able to support all locales, independently of what Android system and/or carriers have to offer. This will help us extend our reach globally and make sure any locale that wants to contribute is treated equally.

In the same vein, we’ve been working hard on making sure we can support our right-to-left locales in Fenix. Reza, a core Mozilla Persian localizer (who you will find called out in our “Friends of the Lion” section), has been a key helper in this initiative and is helping push things forwards. Thank you Reza!

Lockwise has also been a growing initiative that spans across our desktop and mobile products. We have both an Android and iOS version. If you’ve been localizing Firefox iOS, feel free to request the iOS version of this project from the Pontoon project page. For Android, send your request to delphine so she can set you up. All this will help in providing a consistent experience between desktop Lockwise and mobile Lockwise.

What’s new or coming up in web projects

Mozilla.org

Quite a few pages were added and updated in recent weeks. Some of the deadlines are mandatory for Tier 1 markets and others are for all languages in order to be included for certain release.

Update: due on November 25

  • firefox/mobile-2019.lang
  • firefox/whatsnew.lang

New: due on December 11

  • firefox/welcome/page3.lang
  • firefox/welcome/page4.lang

The following pages are important pages that have been activated on production. Please prioritize accordingly:

  • footer.lang
  • navigation.lang
  • firefox/all-unified.lang

SuMo

The project will be on a weekly code push, and localized content will be pushed to production much more regularly than it has been.

Legal documents

In recent months, quite a few legal documents were revised and updated. New documents were created and new languages were added. Reviews and feedback are welcome:

What’s new or coming up in Foundation projects

New donate website

Launch has been delayed, but it will happen as soon as the last blockers are fixed. Thanks for all your work so far! Next steps for this project are exposing the CMS content and a few strings specific to the Thunderbird donate page. This will be the first CMS fully connected to Pontoon, so there are still some last minute issues to fix.

Foundation website

A first batch of UI strings for the foundation website has been exposed in Pontoon for all supported locales. A few strings that are not yet localizable are going to be exposed over the next few weeks.

What’s new or coming up in Pontoon

3-column translation workbench layout

We shipped the first batch of review process improvements that will be coming to Pontoon, notably the new 3-column translation workbench layout. It brings several changes:

  1. A 3rd column has been added in addition to the string list and the editor, which hosts Machinery and Locales panels.
  2. User suggestions and Machinery results – both of which are critical during the review process – can now be seen at the same time.
  3. Editor is now centered in the middle of the screen and uses the same amount of space as before. Translations in History panel use avatars.
  4. String list occupies half of its previous width. Source strings and translations are in separate lines and no longer truncated.

We hope you like the new layout as much as we do. And please let us know if you have any problems!

Pontoon - 3 Columns LayoutOutreachy contribution period complete

Outreachy contribution period is complete, which means we’re in the process of selecting our intern for this round. Accepted interns will be announced on November 26, and the internship will start a week later on December 3. Thanks to April, Dinda, Anastasia, Karskaja, Katherine, Michael, Monika and Okpo for making a contribution and fixing a whooping 37 bugs in total so far.

Newly published localizer facing documentation

Other projects

The Firefox Screenshots project has been removed from Pontoon. The website hasn’t been updated in a long time, and it’s scheduled for removal. We’re working on porting the add-on code to Fluent, and migrating existing translations into each l10n repository. At that point, the add-on will be localizable as part of Firefox.

Events

Want to showcase an event coming up that your community is participating in? Reach out to any l10n-driver and we’ll include that (see links to emails at the bottom of this report)

Opportunities

It’s the end of the year and there are so many unreviewed suggestions in Pontoon! We’re working out a project campaign for December to get your help to reduce the number of unreviewed strings for your locale and start the year fresh. Stay tuned for details!

Friends of the Lion

Image by Elio Qoshi

  • A big shout out to Reza Habibi, who once more is helping out with our right-to-left (RTL) implementation – this time for Fenix! As many already know, this is not the first time Reza helps with this initiative. In fact, he was a key stakeholder during Firefox OS days, and has since then helped with creating RTL specs, as well as finding, reporting, and fixing bugs for many Mozilla projects. He’s also a core Persian localizer, so double kudos to him 🙂
  • Talking about RTL, kudos to Itiel: not only is the main contributor for Hebrew, but he’s constantly listed in These Weeks in Firefox for fixing several RTL bugs in our desktop browser.

Know someone in your l10n community who’s been doing a great job and should appear here? Contact on of the l10n-drivers and we’ll make sure they get a shout-out (see list at the bottom)!

Useful Links

Questions? Want to get involved?

Did you enjoy reading this report? Let us know how we can improve by reaching out to any one of the l10n-drivers listed above.