L20n is an open source, localization-specific scripting language used to process gender, plurals, conjugations, and most of the other quirky elements of natural language. If you haven’t heard about it yet, check it out – it’s incredible.

We want to bring its powers to translators who aren’t coders, so we’re designing a L20n-specific user interface in Pontoon. Here’s a sneak peek of our progress so far.

Simple strings
Pontoon users will find the UI for translating simple strings familiar, because it looks exactly the same as for translating strings in any other file format.

Multiline strings
L20n syntax uses special notation for multiline strings. Pontoon will make it transparent to end users when rendering original strings or serializing translations. Again, no surprises.

HTML attributes
L20n allows adding additional information to the main entity value like HTML attributes. Such cases are marked with a special notation in the UI.

Access keys
Since L20n lets you combine access keys with labels within the same entity, we were able to design a dedicated UI, that lists all possible access keys as you translate the label. You can also type in a custom access key if none of the candidates meets your criteria.

Grammatical cases
With L20n, it’s possible to define different variants of the entity value. Check out the video to see how to store locale-specific variants based on grammatical case.

The plurals UI automatically shows input fields for all CLDR plural forms available for your locale and also displays an example value for each form.

Please note that this is still a work in progress and we’re very much interested in hearing your feedback.