Skip to Content

Offline localization by Sandra

Pontoon is a web application, which is great. You can run it on almost any device with any operating system. You can be sure you always have the latest version, so you don’t need to worry about updates. You don’t even need to download or install anything. There’s just one particular occasion when web applications aren’t so great.

When you’re offline.

Mostly that means the game is over. But it doesn’t need to be so. Application caching together with web storage has made offline web applications a reality. In its latest edition released yesterday, Pontoon now allows translating even when you’re offline. See full changelog for details.

There are many scenarios where offline localization is the only option our localizers have. Decent internet connection simply cannot be taken for granted in many parts of the World. If it’s hard for you to belive that, visit any local tech conference. :-) Or, if you started localizing at home, you can now continue with localization on your daily commute to work. And vice versa.

The way it works is very simple. After Pontoon detects you no longer have a connection, it saves translations to localStorage instead of server. Once you get online again, translations are stored to server. In the meantime, connection dependant functionality like History and Machinery is of course unavailable.

Offline mode was single-handedly developed by our new contributor Sandra Shklyaeva. She just joined Mozilla community and has already fixed one of our oldest bugs. She’s attacking the bugs everybody was pushing away. I can’t wait to see what the future holds (shhhhh)!

Sandra has an interesting story on what got her attracted to Mozilla:

I was exploring some JS API on the developer.mozilla.org when I noticed pretty tabzilla on the top. I clicked it and my chrome became unresponsive completely XD. Maybe it was just a coincidence… Anyway, the tabzilla has caught my attention and that’s how I found out about Get Involved stuff in Mozilla.

If you also want to get involved, now you know where you can find us!

Pontoon report 2014: Get involved

This is the last in a series of blog posts outlining Pontoon development in 2014. I’ll mostly focus on new features targeting translators. If you’re more interested in developer oriented updates, please have a look at the release notes.

Part 1. User interface
Part 2. Backend
Part 3. Meet our top contributors
Part 4. Make your translations better
Part 5. Get involvedyou are here

In the past years, Pontoon has come a long way from an idea, a prototype, to a working product. As of today, there’s a dozen of Mozilla projects available for localization in Pontoon. If you want to move it even further, there are plenty of ways to do so.

For localizers
Start learning how things work by looking at the new Pontoon homepage, which is also used as a demo project to be translated using Pontoon. Perhaps you can translate it to your mother language. You can also learn more advanced features.

For developers
Making your website or web application localizable with Pontoon is quick and easy. A simple script needs to be added and you are halfway through. Follow implementation instructions for more details.

Take action
Do you have ideas for improvement? Are you a developer? Learn how to get your hands dirty. It has never been easier to set up development environment and start contributing. We’re on GitHub.

Pontoon report 2014: Make your translations better

This post is part of a series of blog posts outlining Pontoon development in 2014. I’ll mostly focus on new features targeting translators. If you’re more interested in developer oriented updates, please have a look at the release notes.

Part 1. User interface
Part 2. Backend
Part 3. Meet our top contributors
Part 4. Make your translations betteryou are here
Part 5. Get involved

Some new features have been added to Pontoon, some older tools have been improved, all helping translators be more efficient and make translations more consistent, more accurate and simply better.

History
History tab displays previously suggested translations, including submissions from other users. Privileged translators can pick approved translation or delete the ones they find inappropriate.

Machinery
The next tab provides automated suggestions from several sources: Pontoon translation memory, Transvision (Mozilla), amagama (open source projects), Microsoft Terminology and machine translation by Bing Translator. Using machinery will make your translations more consistent.

Quality checks
Pontoon reviews every submitted translation by running Translate Toolkit pofilter tests that check for several issues that can affect the quality of your translations. Those checks are locale specific and can be turned off by translator.

Placeables
Some pieces of strings are not supposed to be translated. Think HTML markup or variables for example. Pontoon colorizes those pieces (called placeables) and allows you to easily insert them into your translation by clicking on them.

Get involved
Are you a developer, interested in Pontoon? Learn how to get your hands dirty.

Pontoon report 2014: Meet our top contributors

This post is part of a series of blog posts outlining Pontoon development in 2014. I’ll mostly focus on new features targeting translators. If you’re more interested in developer oriented updates, please have a look at the release notes.

Part 1. User interface
Part 2. Backend
Part 3. Meet our top contributorsyou are here
Part 4. Make your translations better
Part 5. Get involved

Until recently, Pontoon only supported basic statistics, available during project translation. It was impossible to track overall project progress, check locale status or see the most active localizers. This is no longer the case.

Project Overview
You can list all projects available for translation within Pontoon. For each of them, information on the number of total strings is available, as well as translation progress.

Project and locale page
Additionally, a list of all locales enabled for specific project is available by clicking on it in the project overview page. If your locale is not on the list, Pontoon allows you to request it. In a similar fashion, you can track locale progress.

Top contributors
Localization at Mozilla is made possible by army of awesome volunteers. Without their help, the web and Mozilla would not be what it is today. Check out the most active contributors on Pontoon.

User pages
You can check some basic information for each contributor, including stats and timeline of his work. Meet Ayan, top Pontoon contributor!

Get involved
Are you a developer, interested in Pontoon? Learn how to get your hands dirty.

Pontoon report 2014: Backend

This post is part of a series of blog posts outlining Pontoon development in 2014. I’ll mostly focus on new features targeting translators. If you’re more interested in developer oriented updates, please have a look at the release notes.

Part 1. User interface
Part 2. Backendyou are here
Part 3. Meet our top contributors
Part 4. Make your translations better
Part 5. Get involved

In the first part we focused on frontend. Let’s look at the backend changes now.

Extended revision control system support
All projects we localize at Mozilla store translations using revision control systems, namely Git, Mercurial and Subversion. All of them are now supported in Pontoon. Additionally, Transifex can be used as data store.

Automated synchronization with repositories
Committing to and updating from repositores is counterintuitive. Most translators don’t event understand the concept of revision control. These task are now performed automatically in the background every full hour. Conflicts are resolved silently by allowing upstream to win.

New localization formats
All localization file formats used at Mozilla are supported (e.g. .po, .lang, .dtd. and .properties). You can also use a mix of different formats within your project and they will still work with Pontoon.

Plural forms
If format supports different plural forms, Pontoon will detect that and allow saving translations in all forms available for the locale. Other format-specific features such as fuzzy strings in .po files are also available.


Numbers in green are used as an example number that will replace the variable.

Get involved
Are you a developer, interested in Pontoon? Learn how to get your hands dirty.

Pontoon report 2014: User interface

This post marks the beginning of a series of blog posts outlining Pontoon development in 2014. I’ll mostly focus on new features targeting translators. If you’re more interested in developer oriented updates, please have a look at the release notes.

Part 1. User interfaceyou are here
Part 2. Backend
Part 3. Meet our top contributors
Part 4. Make your translations better
Part 5. Get involved

The old UI for out-of-context translation didn’t scale. It worked for basic presentation of original strings and translation area, but once we started adding more and more tools like translation memory, quality checks or plural forms, we simply ran out of space. So we started from scratch and came up with something completely different.

Flat Design
We went flat. Not because everyone else did, but because it’s neutral. And we needed neutral to contrast various website designs when they are being translated within Pontoon. For the very same reason Pontoon uses dark color scheme since day one.

Sidebar is the new bottom panel
Out-of-context mode has moved to the sidebar to take advantage of widescreen monitors. It features two exchanging panels, one to display strings and the other to translate. This layout gives us much more real estate for adding new capabilities.

Flexibility
Sidebar is draggable. When it becomes wide enough, both panels are displayed at the same time, side by side. This also happens if in-context translation mode (website) is not available, in which case fullwidth sidebar is always open.

Keyboard shortcuts
Basic support for navigating menus with arrow keys, confirming with Enter or closing with Esc was always available. From now on, saving translations, inserting suggestions, moving among strings and such are also accessible through keyboard.

Get involved
Are you a developer, interested in Pontoon? Learn how to get your hands dirty.

Mozilla Persona at Spletne urice #222

Yesterday I’ve received these fancy Persona stickers from Pascal:

Sadly, they’ve arrived late for the talk on Persona I was giving at Spletne urice in Ljubljana three weeks ago. But at least I got a reminder to publish my slides. I’d like to thank François, Dan, Shane and Lloyd for helping me with this talk.

900% growth

Since its beginnings, Mozilla Slovenija has been a group of 3-5 people, bringing the values of Mozilla to the sunny side of the Alps. Things started changing at the end of last year, as Brian beautifully documented in his blog. So I’m happy to report that we increased the number of members in less than 3 months from 3 to 30.

Without sounding like Apple, this means 900% growth!

Mozilla Slovenija has never been even remotely as strong as it is today, so we recently held our very first all-day community meetup at the cosy Astina offices in Ljubljana (thank you for hosting us!). The rationale was to help new contributors learn about and start contributing to Mozilla. My talks were about Mozilla and why should one get involved and Localization at Mozilla and why it matters.

We even had Firefox OS-inspired name tags – a joint effort of Matej, Rok and Peter.

I’m glad to see so many talented people joining the effort of spreading the values of Mozilla. We got new people working on localization, design, system administration, development, marketing, support etc. And something tells me that the best is yet to come.



Localizing whatcanidoformozilla.org with Pontoon

Whatcanidoformozilla.org AKA asknot is a fun and useful website, created by Josh Matthews. From now on, you can localize it with Pontoon. Yay!

If you’d like to add a new locale to the list, please let me know in the comments.

Localizing Firefox OS with Pontoon

Finally, the day has arrived to launch Pontoon! It’s a big pleasure for me to announce that the first application we will localize with Pontoon is Mozilla’s latest and greatest project, Firefox OS.

To be more precise, we will use Pontoon to localize Gaia, the user interface of Firefox OS. You can learn more about Gaia localization in general by reading Staś’ announcement in the newsgroup.

OK, so how do I localize Gaia with Pontoon?

1. Simply select Gaia from the project menu and pick one of the supported locales.

2. The Browser app will load by default in the external window, but you need to allow pop-ups first. Strings available in HG are already imported. To translate in the app itself hover over any string, click the pencil button and confirm with the save button. It’s fun and useful at the same time, because you can see the context and the space available.

3. A list of strings will load in the main Pontoon window, where you can also translate strings, for example those that cannot be found in the app. Tools like translation memory and machine translation are also available here, as is the menu to switch among apps.

Important: Sign in before translating, so you’ll be able to save your work.

4. Once you’re done localizing an app, you can download translations for it as .properties file. You need to push it to HG manually.

Known bugs

  • Some strings cannot be edited in-place, because they are not marked or in an iframe.
  • Users should be able to update translations from HG for their locale themselves.
  • Please file any other issues you have on GitHub.

Thank you
I’d like to thank everyone how has contributed to Pontoon so far either by providing code, feedback or in any other way. Without your help, Pontoon would not be the same thing. We remain open for your contributions.