To meet its localization needs, webOS uses a new open source library called ilib. If you have worked with webOS in the past, you may remember that it previously used a library called
g11n, which has since been released to the open source community as part of the enyojs project.
g11n has been deprecated and should not be used in new Enyo projects going forward.
The good news for those who've worked with
g11n is that, in several ways,
ilib is quite similar. For example, the
$L("string") syntax is still used for string localization. Also, while the two libraries' APIs for formatting dates, times, and numbers are somewhat different, the functionality offered is largely the same.
These similarities make sense when you consider that
ilib is maintained by Edwin Hoogerbeets, the original author of
g11n, who has returned to work with SVL as a contract employee. TV app developers will be pleased to note that Edwin has created a compatibility library, enyo-ilib, to wrap
ilib's functionality for easy access from Enyo apps.
enyo-ilib is included in
bootplate-moonstone by default, so in the vast majority of cases, you shouldn't need to clone it separately. However, in the event that you do, the following command should work:
git clone http://polar.lge.com:8100/gitweb?p=zz-github_mirror/enyojs/enyo-ilib.git
For a more comprehensive treatment of this subject, see Edwin's webOS Globalization Guide.
Typically, app developers will not need to concern themselves with the fonts that are used in their apps. However, you may be interested to know how the framework determines which font is used:
If the current locale's language uses a non-Latin script, we use LG Display for all fonts.
If the current locale uses a Latin script, we use Miso/MuseoSans; we use CSS to fall back to LG Display for any non-Latin characters that need to be displayed (e.g., if the locale is US-English but a video in the YouTube app has Korean text in the name).