Internationalization workflow and formatting
L10ns deals with the entire translation problem mentioned above. It manage syncing translation keys between your source code and your localization storage. You can compile translations and open a translation interface by a CLI method. It supports ICU's message format and reads data directly from CLDR for translating multiple complex translations.
npm install l10ns -g
Create a new project folder test and initialize a new translation project. The initialization guide will lead you through creating a project.
$ mkdir test$ cd test$ l10ns init
Now, create a source file test.js with (at least) the following code:
var requireLocalizations = require('path/to/output');var l = requireLocalizations('en-US');var firstname = l('SIGN_UP__FIRSTNAME');var lastname = l('SIGN_UP__LASTNAME');
Now, let's update translation keys from source. It will traverse your source code and look for all
$ l10ns update
Let's check which translation keys have been added:
$ l10ns log@1 SIGN_UP__FIRSTNAME | NO TRANSLATION@2 SIGN_UP__LASTNAME | NO TRANSLATION
Edit the last translation using log reference:
$ l10ns set @1 "Firstname" # using default language$ l10ns set @1 -l zh-CN "名" # using Chinese
Translation are now saved to a localization file. To compile to your source programming language:
$ l10ns compile
Let's set up a web interface for translator to use:
$ l10ns interface
For more information please checkout our official documentation.
Copyright (c) 2014 Tingan Ho Licensed under the MIT license.