Difference between revisions of "Internationalization"

From WebOS-Ports
Jump to navigation Jump to search
m
 
Line 9: Line 9:
 
[[Spanish_Lexicon|Spanish Lexicon]]
 
[[Spanish_Lexicon|Spanish Lexicon]]
  
== JavaScript Localization ==
+
== Localization ==
 
Specific phrases belong in the localization files, which are part of the repositories on GitHub.  
 
Specific phrases belong in the localization files, which are part of the repositories on GitHub.  
 
Link to them from this section.
 
Link to them from this section.
 +
 +
=== JavaScript Localization ===
  
 
The recommended I18N library for Enyo apps is enyo-ilib: https://github.com/enyojs/enyo-ilib
 
The recommended I18N library for Enyo apps is enyo-ilib: https://github.com/enyojs/enyo-ilib
Line 25: Line 27:
 
enyo.macroize($L('Found {$num} items.'), {num: 42});
 
enyo.macroize($L('Found {$num} items.'), {num: 42});
  
== C/C++ Localization ==
+
=== C/C++ Localization ===

Latest revision as of 17:25, 26 February 2015

Lexicons

These lexicons exist so English terminology is translated consistently. Lexicons should focus on common noun phrases and verb phrases used throughout LuneOS.

Update lexicons with new terms as needed.

German Lexicon

Spanish Lexicon

Localization

Specific phrases belong in the localization files, which are part of the repositories on GitHub. Link to them from this section.

JavaScript Localization

The recommended I18N library for Enyo apps is enyo-ilib: https://github.com/enyojs/enyo-ilib Documentation for iLib itself is at http://sourceforge.net/p/i18nlib/wiki/iLib%20-%20an%20internationalization%20library%20written%20in%20Javascript/

As you work on apps, wrap every UI string in $L(). Enyo defines it as a no-op, so it's safe to use, even before enyo-ilib is added to the app. enyo-ilib aliases it to the localization function.

Do *not* concatenate strings with parameters. Use enyo.macroize Example:

enyo.macroize($L('Found {$num} items.'), {num: 42});

C/C++ Localization