new Langauge\GetLocale::setLocale() for getting new type lang info from session, etc L10n class call chnage of parameters: NEW: locale, domain, path OLD: locale, path, domain, legacy(bool) Temporary auto detect for possible path/domain switch if domain value has slash inside Rename all local files to names matching locale folder en_US -> en Delete lang folders with symlinks as they are no longer used Update all header files and class Backend\Admin, ACL\Login, Output\Form\Generate, Template\SmartyExtend with new language order: call ::setLocale() afer login class Update missing test translation strings in all po files Update phpUnit tests to match all new changes
Translation files
Source file name convetion
Locale Name . Domain . Encoding .po
Name parte explenations
Locale Name Examples
If underscore in name the long version is checked first, then the short version: en_US@latin -> en_US -> en
- en
- en_US
- en_US.UTF-8
- en_US@latin
Domain
For current case auto set CONTENT_PATH is used
- admin
- frontend
Encoding
if not set UTF-8 is assumed. Any other utf8 encoding is changed to UTF-8
- UTF-8
- SJIS
- EUC
File name example source
ja-admin.po
First part is LOCALE, second part is domain. Separator is -
Folder layout
includes/locale/ja/LC_MESSAGES/frontend.mo
ALTERNATE LOCALE NAMES:
- ja
- ja_JP
- ja.UTF-8
- ja_JP.UTF-8
ja_JP.UTF-8: Locale Name frontend: dmain (CONTENT_PATH)
command
msgfmt -o www/includes/locale/ja/LC_MESSAGES/frontend.mo 4dev/lang/ja.admin.po