Вы всегда должны использовать стандарт "де-факто", который является способом unix / posix с gettext
. И вы должны использовать gettext
, чтобы сделать вашу локализацию!
Поэтому единственный правильный способ - использовать именование локализации так:
en
en_US
en_UK
Некоторые приложения и особенно Java-разработчики иногда используют en-US
(через дефис вместо подчеркивания), и это ВСЕ НЕПРАВИЛЬНО !!!
Стандарт gettext - это и только это:
locale
|_en_US
|_LC_MESSAGES
|_appname.mo
Где:
locale
- Имя каталога, может отличаться, но настоятельно рекомендуется остаться с "locale" -name
en_US
- любая стандартная локаль, например * es_ES *, * es_PT *, ...
LC_MESSAGES
- обязательно и не может быть изменено!
appname.mo - msgfmt скомпилированный файл appname.po (appname - это то, что вам нужно)