Introduction
- Definition
- i18n is a short form of internationalisation, that is a process of design to allow software adapt to various language and region without engineering changes
- l10n is a short form of localisation, that is a process of adapting internationalised software to specific language and region. Yet, it is not limited to text translation, but all kind of content including images, videos, etc
- Locale is an identifier to specify language and region, yet, two standards has to remember
zh_HK
we call this POSIX style, and is adopted in UNIX and javaShould be a topic in presenter layer instead of container layerzh-HK
we call this IETF tag, and should be appropriate for the rest of the world
- This should be a topic in presenter layer instead of container layer
- In other word, the selector should not deal with localisation
- Should learn about i18next
Design principle: Folder structure
A general folder structure will be
./app/l10n
/images
/flags/
cn.png
/edit_button_en-HK.png
/edit_button_zh-HK.png
/download_button.png
/index.js
/translations
/zh-HK
/common.json
/images.json
/account-viewer.json
/cart-checkout.json
/en-HK
/common.json
/images.json
/account-viewer.json
/cart-checkout.json
/i18n.js
Talk about
- i18next
- Take the advantage of TaaS in CI, or even CD
- translate as HOF
.... well, if i have time can write write ....