POSIX locale
В POSIX
(Portable Operating System) были определены средства локализации, названные locale
(к сожалению, не существует адекватного русского перевода этого термина). Locale (англ.) - местные особенности.
Locale - это такое системное средство (фича ;-) позволяющее настроить систему на работу с данными в конкретном национальном (местном) представлении. Отдаленно напоминает средство CodePage в MS-DOS или OS/2.
Средства POSIX locale охватывает немого больший круг понятий, чем просто работа с национальными .
Зачем ? Дело в том, что кроме собственно языка общения и алфавита, в разных странах различаются такие обычаи, как представление даты, времени, финансовых величин и т.д. Эти "культурные правила"
уже закреплены традицией и национальными стандартами, иногда довольно давно, поэтому при "локализации" программных продуктов существует необходимость в настройке их еще и на эти "культурные правила". В стандарте POSIX
культурные правила объединены в группы - категории локализации.
* ПРИМЕЧАНИЕ : В принципе, каких "культурных нюансов" можно найти много. См. например статью : Colors, Buttons, Words and Culture: Designing Software for the Global Community (копия здесь) или Internationalization. Но в большинстве случаев, для машинной обработки информации вполне хватает понятий POSIX locale.
Структурно, средства POSIX locale
состоят из следующих компонентов :
:
* * *
Существующая также "система управления сообщениями на национальном языке" : (Native Language Support) формально не входит в POSIX locale, хотя во многом дополняет функции locale.
Также довольно тесно пересекаются с locale
такие механизмы POSIX как поддержка многобайтных (multibyte) и "широких" (wide-char) символов. Эта связь не очень заметна для европейских языков, но в для поддержки алфавитов с большим числом знаков (японский ~2000, китайский ~8000, UNICODE ~25000) это становится жизненно необходимо.
* ПРИМЕЧАНИЕ : POSIX locale HЕ ИМЕЕТ накакого отношения к физическому в UNIX и к проблемам работы терминала, клавиатуры и печатающих устройств с национальными символами.
:) по функциям POSIX.1 :
, /isxxxx(),,
и т.д.
И конечно их исходные тексты (начиная с версии Linux libc 5.3.x или GNU libc 2.0.x).
В исходных текстах libc, man - примеры message catalog-ов.
HTML-версия GNU info есть например на
или локально : .
Перевод: (хост умер ?)
locale в библиотеке GNU libc и Linux libc :
и его доклад :
(ISO/IEC 9945-2:1988, 1990, 1992, 1996 от
* ISO и
* IEC или, что то же самое,
IEEE Std. 1003.2-1992) и POSIX.2a, POSIX.2b .
* IEEE
Hа утверждается, что это стоит денег, поэтому лучше всего поглядеть на
(там правда draft версии)
или соответственно, через WWW. Например :
- он же, через WWW виден как :
, далее :
e.t.c.
и прочие документы пограммы i18n. Ведет ее Keld Simonsen <> :
Русскиe charset ISO_8859-5, KOI8-R, CP1251, e.t.c.
Русская locale ru_RU.