Jump to content

Локаль (компьютерное программное обеспечение)

В вычислительной технике локаль это набор параметров , определяющих язык пользователя, регион и любые особые предпочтения варианта, которые пользователь хочет видеть в своем пользовательском интерфейсе . Обычно идентификатор локали состоит как минимум из кода языка и кода страны/региона. Локаль — важный аспект i18n .

Общие настройки локали

[ редактировать ]

Эти настройки обычно включают в себя следующие настройки формата отображения (вывода):

  • Настройка формата числа (LC_NUMERIC, C/C++)
  • Классификация символов, настройки преобразования регистра (LC_CTYPE, C/C++)
  • Настройка формата даты и времени (LC_TIME, C/C++)
  • строк Настройка сортировки (LC_COLLATE, C/C++)
  • Настройка формата валюты (LC_MONETARY, C/C++)
  • Настройка формата бумаги (LC_PAPER, ISO 30112)
  • Настройка цвета
  • Настройка шрифта пользовательского интерфейса (особенно для CJKV ) языка
  • Настройка местоположения (страна или регион)

Настройки локали касаются форматирования вывода с учетом локали. Таким образом, информация о часовом поясе и переходе на летнее время обычно не являются частью региональных настроек. Менее распространенной является настройка формата ввода, которая в основном определяется для каждого приложения отдельно.

Поддержка языков программирования и разметки.

[ редактировать ]

В этих средах

и других (в настоящее время) средах на основе Unicode , они определены в формате, аналогичном BCP 47 . Обычно они определяются только кодами ISO 639 (язык) и ISO 3166-1 альфа-2 (двухбуквенные страны).

Международные стандарты

[ редактировать ]

В стандартах C и C++ локаль определяется в «категориях» LC_COLLATE (сопоставление текста), LC_CTYPE (класс символов), LC_MONETARY (формат валюты), LC_NUMERIC (числовой формат) и LC_TIME (формат времени). Специальный Категория LC_ALL может использоваться для установки всех настроек локали. [1]

Не существует стандартных имен локалей, связанных со стандартами C и C++, кроме имени «минимального локали» «C», хотя формат POSIX является широко используемым базовым вариантом.

POSIX-платформы

[ редактировать ]

На платформах POSIX , таких как Unix , Linux и других, идентификаторы локали определяются аналогично определению языковых тегов в BCP 47 , но модификатор варианта локали определяется по-другому, а набор символов необязательно включается как часть идентификатора. . Формат POSIX или «XPG» [язык[_территория][.кодовый набор][@модификатор]] . (Например, австралийский английский , использующий UTF-8, кодировку ru_AU.UTF-8 .) [2] Отдельно ISO/IEC 15897 описывает другую форму: Language_territory+audience+application,sponsor_version , хотя крайне сомнительно, что он вообще используется. [3]

В следующем примере есть вывод команды locale для чешского языка (cs), Чешской Республики (CZ) с явной кодировкой UTF-8 :

$ locale
LANG=cs_CZ.UTF-8
LC_CTYPE="cs_CZ.UTF-8"
LC_NUMERIC="cs_CZ.UTF-8"
LC_TIME="cs_CZ.UTF-8"
LC_COLLATE="cs_CZ.UTF-8"
LC_MONETARY="cs_CZ.UTF-8"
LC_MESSAGES="cs_CZ.UTF-8"
LC_PAPER="cs_CZ.UTF-8"
LC_NAME="cs_CZ.UTF-8"
LC_ADDRESS="cs_CZ.UTF-8"
LC_TELEPHONE="cs_CZ.UTF-8"
LC_MEASUREMENT="cs_CZ.UTF-8"
LC_IDENTIFICATION="cs_CZ.UTF-8"
LC_ALL=

Особенности платформ Microsoft

[ редактировать ]

Windows использует определенные языка и территории строки . Идентификатор языкового стандарта (LCID) для неуправляемого кода в Microsoft Windows — это число, например 1033 для английского языка (США), 2057 для английского языка (Великобритания) или 1041 для японского языка (Япония). Эти числа состоят из кода языка (младшие 10 бит) и кода культуры (старшие биты) и поэтому часто записываются в шестнадцатеричной записи, например 0x0409, 0x0809 или 0x0411. Microsoft начинает представлять интерфейсы прикладного программирования (API) управляемого кода для .NET, использующие этот формат. Одной из первых, которые будут выпущены, является функция для смягчения проблем с интернационализированными доменными именами . [4] но больше в Windows Vista Beta 1.

Начиная с Windows Vista, новые функции [5] которые используют имена локалей BCP 47, были введены для замены почти всех API на основе LCID.

POSIX-подобный формат имени локали язык[_country-region[.кодовая страница]] доступен в UCRT (универсальная среда выполнения C) Windows 10 и 11. [6]

См. также

[ редактировать ]
  1. ^ «LC_ALL, LC_COLLATE, LC_CTYPE, LC_MONETARY, LC_NUMERIC, LC_TIME — cppreference.com» . ru.cppreference.com .
  2. ^ «Переменные среды» . pubs.opengroup.org .
  3. ^ «ISO/IEC JTC1/SC22 N610 [проект ISO/IEC 15897:1998(E)] Информационные технологии. Процедуры регистрации элементов культуры» (PDF) . 17 ноября 1998 г. Проверено 8 июня 2023 г. Для описательных культурных спецификаций и локалей POSIX идентификатор токена будет: 8_9+11+12,13_14.
  4. ^ «Функция DownlevelGetLocaleScripts (Windows)» . MSDN . Майкрософт . Проверено 11 декабря 2017 г.
  5. ^ «Локальные имена (Windows)» . MSDN . Майкрософт . Проверено 11 декабря 2017 г.
  6. ^ «Названия локали, языки и строки страны-региона» . Learn.microsoft.com . 19 октября 2022 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: df4e1a6f64b3a9a1052cd7bcfd4582ef__1720284900
URL1:https://arc.ask3.ru/arc/aa/df/ef/df4e1a6f64b3a9a1052cd7bcfd4582ef.html
Заголовок, (Title) документа по адресу, URL1:
Locale (computer software) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)