Локаль представляет собой комбинацию параметров, задающих язык, страну и кодовую страницу, а также определяющую набор соглашений о языке. Эти соглашения определяют правила сравнения, информацию о соответствии регистров и классификации символов, язык каталогов сообщений, формат даты и времени, символы денежной единицы и формат чисел.
Информация о локали из исходных файлов определения локали нужно преобразовать в базу данных локали с помощью команды localedef. После этого информация о локали станет доступной для подпрограммы setlocale, которая задает локаль для приложений. Исходные файлы определения локали логически разделяются на шесть категорий (см. Описание категорий локали). В файлах каждой категории содержатся данные локали определенного типа. Локаль задается с помощью переменных среды LC_* и LANG.
Имя локали совпадает с именем исходного файла ее определения. Имя этого файла задается в зависимости от языка, страны и кодовой страницы, которые в нем указаны. Имя файла определения локали указывается в следующем формате:
язык[_страна][.кодов_страница][@модификатор]
Например, локаль для датского языка с кодовым набором ISO8859-1 называется da_DK.ISO8859-1. da задает датский язык, а DK - Данию. Краткая запись имени локали - da_DK. Тот же язык и страна, но с кодовой страницей IBM-850, называется Da_DK.IBM-850 или, в краткой записи, Da_DK.
С системой поставляется несколько
определений локалей, которые задают формат локали и соответствующие ключевые
слова. Файлы определения локалей находятся в каталоге
/usr/lib/nls/loc. Локаль C, или POSIX, определяет
стандартную локаль ANSI C, которая передается всем процессам во время
запуска. Кроме того, существуют исходные файлы определений следующих
системных локалей:
Локаль | Язык | Страна | Кодовая страница |
---|---|---|---|
Ar_AA | Арабский | Страны с арабским языком | IBM-1046 |
ar_AA | Арабский | Страны с арабским языком | IS08859-6 |
ar_AE | Арабский | Объединенные Арабские Эмираты | ISO8859-6 |
ar_BH | Арабский | Бахрейн | ISO8859-6 |
ar_EG | Арабский | Египет | ISO8859-6 |
ar_JO | Арабский | Иордания | ISO8859-6 |
ar_KW | Арабский | Кувейт | ISO8859-6 |
ar_LB | Арабский | Ливан | ISO8859-6 |
ar_OM | Арабский | Оман | ISO8859-6 |
ar_QA | Арабский | Катар | ISO8859-6 |
ar_SA | Арабский | Саудовская Аравия | ISO8859-6 |
ar_SY | Арабский | Сирия | ISO8859-6 |
ar_TN | Арабский | Тунис | ISO8859-6 |
be_BY | Белорусский | Беларусь | ISO8859-5 |
bg_BG | Болгарский | Болгария | ISO8859-5 |
ca_ES | Каталанский | Испания | IS08859-1 |
ca_ES | Каталанский | Испания | ISO8859-15 |
cs_CZ | Чешский | Чехия | ISO8859-2 |
Da_DK | Датский | Дания | IBM-850 |
da_DK | Датский | Дания | ISO8859-1 |
da_DK | Датский | Дания | ISO8859-15 |
de_AT | Немецкий | Австрия | ISO8859-15 |
De_CH | Немецкий | Швейцария | IBM-850 |
de_CH | Немецкий | Швейцария | ISO8859-1 |
de_CH | Немецкий | Швейцария | ISO8859-15 |
De_DE | Немецкий | Германия | IBM-850 |
de_DE | Немецкий | Германия | ISO8859-1 |
de_DE | Немецкий | Германия | ISO8859-15 |
de_LU | Немецкий | Люксембург | ISO8859-15 |
el_GR | Греческий | Греция | ISO8859-7 |
en_AU | Английский | Австралия | ISO8859-15 |
en_BE | Английский | Бельгия | ISO8859-15 |
en_CA | Английский | Канада | ISO8859-15 |
En_GB | Английский | Великобритания | IBM-850 |
en_GB | Английский | Великобритания | ISO8859-1 |
en_GB | Английский | Великобритания | ISO8859-15 |
en_IE | Английский | Ирландия | ISO8859-15 |
en_IN | Английский | Индия | ISO8859-15 |
en_NZ | Английский | Новая Зеландия | ISO8859-15 |
En_US | Английский | США | IBM-850 |
en_US | Английский | США | ISO8859-1 |
en_US | Английский | США | ISO8859-15 |
en_ZA | Английский | Южная Африка | ISO8859-15 |
es_AR | Испанский | Аргентина | ISO8859-15 |
es_CL | Испанский | Чили | ISO8859-15 |
es_CO | Испанский | Колумбия | ISO8859-15 |
Es_ES | Испанский | Испания | IBM-850 |
es_ES | Испанский | Испания | ISO8859-1 |
es_ES | Испанский | Испания | ISO8859-15 |
es_MX | Испанский | Мексика | ISO8859-15 |
es_PE | Испанский | Перу | ISO8859-15 |
es_PR | Испанский | Пуэрто-Рико | ISO8859-15 |
es_UY | Испанский | Уругвай | ISO8859-15 |
es_VE | Испанский | Венесуэла | ISO8859-15 |
Et_EE | Эстонский | Эстония | IBM-922 |
ET_EE | Эстонский | Эстония | UTF-8 |
Fi_FI | Финский | Финляндия | IBM-850 |
fi_FI | Финский | Финляндия | ISO8859-1 |
fi_FI | Финский | Финляндия | ISO8859-15 |
Fr_BE | Французский | Бельгия | IBM-850 |
fr_BE | Французский | Бельгия | ISO8859-1 |
fr_BE | Французский | Бельгия | ISO8859-15 |
Fr_CA | Французский | Канада | IBM-850 |
fr_CA | Французский | Канада | ISO8859-1 |
fr_CA | Французский | Канада | ISO8859-15 |
Fr_FR | Французский | Франция | IBM-850 |
fr_FR | Французский | Франция | ISO8859-1 |
fr_FR | Французский | Франция | ISO8859-15 |
fr_LU | Французский | Люксембург | ISO8859-15 |
Fr_CH | Французский | Швейцария | IBM-850 |
fr_CH | Французский | Швейцария | ISO8859-1 |
fr_CH | Французский | Швейцария | ISO8859-15 |
HI_IN | Хинди | Индия | UTF-8 |
hr_HR | Хорватский | Хорватия | ISO8859-2 |
hu_HU | Венгерский | Венгрия | ISO8859-2 |
Is_IS | Исландский | Исландия | IBM-850 |
is_IS | Исландский | Исландия | ISO8859-1 |
is_IS | Исландский | Исландия | ISO8859-15 |
it_CH | Итальянский | Швейцария | ISO8859-15 |
It_IT | Итальянский | Италия | IBM-850 |
it_IT | Итальянский | Италия | ISO8859-1 |
it_IT | Итальянский | Италия | ISO8859-15 |
lw_IL | Иврит | Израиль | IBM-856 |
iw_IL | Иврит | Израиль | ISO8859-8 |
Ja_JP | Японский | Япония | IBM-943 |
ja_JP | Японский | Япония | IBM-eucJP |
ko_KR | Корейский | Корея | IBM-eucKR |
Lt_LT | Литовский | Литва | IBM-921 |
LT_LT | Литовский | Литва | UTF-8 |
Lv_LV | Латвийский | Латвия | IBM-921 |
LV_LV | Латвийский | Латвия | UTF-8 |
mk_MK | Македонский | Македония | ISO8859-5 |
Nl_BE | Голландский | Бельгия | IBM-850 |
nl_BE | Голландский | Бельгия | ISO8859-1 |
nl_BE | Голландский | Бельгия | ISO8859-15 |
Nl_NL | Голландский | Нидерланды | IBM-850 |
nl_NL | Голландский | Нидерланды | ISO8859-1 |
nl_NL | Голландский | Нидерланды | ISO8859-15 |
No_NO | Норвежский | Норвегия | IBM-850 |
no_NO | Норвежский | Норвегия | ISO8859-1 |
no_NO | Норвежский | Норвегия | ISO8859-15 |
pl_PL | Польский | Польша | ISO8859-2 |
pt_BR | Португальский | Бразилия | ISO8859-1 |
pt_BR | Португальский | Бразилия | ISO8859-15 |
Pt_PT | Португальский | Португалия | IBM-850 |
pt_PT | Португальский | Португалия | ISO8859-1 |
pt_PT | Португальский | Португалия | ISO8859-15 |
ro_RO | Румынский | Румынский | ISO8859-2 |
ru_RU | Русский | Россия | ISO8859-5 |
sh_SP | Сербский (латиница) | Югославия | ISO8859-2 |
sh_YU | Сербский (латиница) | Югославия | ISO8859-2 |
sl_SI | Словенский | Словения | ISO8859-2 |
sk_SK | Словацкий | Словакия | ISO8859-2 |
sq_AL | Албанский | Албания | ISO8859-1 |
sq_AL | Албанский | Албания | ISO8859-15 |
sr_SP | Сербский (кириллица) | Югославия | ISO8859-5 |
sr_YU | Сербский (кириллица) | Югославия | ISO8859-5 |
Sv_SE | Шведский | Швеция | IBM-850 |
sv_SE | Шведский | Швеция | ISO8859-1 |
sv_SE | Шведский | Швеция | ISO8859-15 |
th_TH | Тайский | Таиланд | TIS-620 |
TH_TH | Тайский | Таиланд | UTF-8 |
tr_TR | Турецкий | Турция | ISO8859-9 |
Uk_UA | Украинский | Украина | IBM-1124 |
Vi_VN | Вьетнамский | Вьетнам | IBM-1129 |
VI_VN | Вьетнамский | Вьетнам | UTF-8 |
Zh_CN | Упрощенный китайский | КНР | GBK |
zh_CN | Упрощенный китайский | КНР | IBM-eucCN |
ZH_CN | Китайский | КНР | UTF-8 |
zh_TW | Традиционный китайский | Тайвань | IBM-eucTW |
Zh_TW | Традиционный китайский | Тайвань | big5 |
Локаль по умолчанию - это локаль, выбранная во время установки. Например, когда во время установки появится соответствующее приглашение, пользователь может задать Французский в качестве языка и Канада в качестве страны. В качестве кодовой страницы автоматически будет установлено значение по умолчанию ISO8859-1. В результате для переменной среды LANG, задающей локаль по умолчанию, будет установлено значение fr_CA (fr означает французский язык с кодовой страницей ISO8859-1, а CA - Канаду). Все процессы будут применять эту локаль, пока не будет изменено значение переменной среды LC_* или LANG. Для изменения локали по умолчанию применяется меню Работа с языковой средой в Инструмент управления системой (SMIT) - Обзор.