Note: This document is in draft form/out-of-date — for current documentation please see our documentation on GitHub.
Introducing L20n
L20n reinvents software localization. Users should be able to benefit from the entire expressive power of the natural language. L20n keeps simple things simple, and at the same time makes complex things possible.
Through L20n, Mozilla is creating a new generation of technology that places more power in localizers' hands. L20n lets localizers reach higher levels of free linguistic expression by sharpening the divide between localization and application logic. It allows to adapt your web application not only to languages and cultures, but also contextual data, user gender and screen dimensions.
What L20n looks like
Here is a simple, straightforward example showing an English string being provided:
<brandName "Firefox"> <about "About {{ brandName }}">
Here is the same string being provided in Slovenian:
<brandName { nominative: "Firefox", genitive: "Firefoxa", dative: "Firefoxu", accusative: "Firefox", locative: "Firefoxu", instrumental: "Firefoxom" }> <about "O {{ brandName.locative }}">
For Developers
Documentation for developers wanting to implement localization functionality on their web apps using L20n.
- Internationalization for your web app
- First read for developers looking to use the L20n infrastructure.
- L20n's HTML bindings
- Tutorial on implementing L20n in your HTML code.
- L20n JavaScript API
- An API for l20n.js.
- L20n syntax cheatsheet for developers
- A simple cheatsheet to help developers as they add L20n to their localization infrastructure.
For Localizers
Documentation for Localizers creating localized content for a project that uses L20n.
- Learn the L20n syntax
- How to naturally localize applications using L20n. Complete with use cases and examples of L20n in action.
- Localization use-cases
- How to naturally localize applications using L20n. Complete with use cases and examples of L20n in action.
- L20n and Translation Memory eXchange (TMX)
- How L20n impacts the Translation Memory eXchange standard for translation memory data.
- L20n syntax cheatsheet for localizers
- A simple cheatsheet to help localizers as they localize projects with L20n.
Additional resources
Some additional resources for developers and localizers involved with L20n.
- L20n.org
- You can try L20n live in your browser on the project page.
- L20n Tinker
- Test out your own L20n code in L20n Tinker.
- GitHub
- Where the main code for the L20n infrastructure and design spec lives.
- Wiki page
- Info about the project to develop L20n.