localedef(1) General Commands Manual localedef(1)

ИМЯ

localedef - компилирует файлы определения локали

СИНТАКСИС

localedef [параметры] путь_результата
localedef --add-to-archive [параметры] путь_скомпилированного
localedef --delete-from-archive [параметры] имя_локали
localedef --list-archive [параметры]
localedef --help
localedef --usage
localedef --version

ОПИСАНИЕ

Программа localedef читает заданные файлы карты символов (charmap) и входные файлы, компилирует их в двоичную форму для быстрого доступа из функций локали библиотеки C (setlocale(3), localeconv(3) и т. д.) и помещает результат в путь_результата.

Аргумент путь_результата рассматривается следующим образом:

Если путь_результата содержит косую черту («/»), то он считается именем каталога для хранения создаваемых определений. В этом случае создаётся отдельный файл результата для каждой категории локали (LC_TIME, LC_NUMERIC и так далее).
Если указан параметр --no-archive, то путь_результата считается именем подкаталога в /usr/lib/locale, где размещены скопированные файлы для каждой категории.
В противном случае, путь_результата считается именем локали и компилируемые данные локали добавляются в файл архива /usr/lib/locale/locale-archive. Файл архива — это файл отображаемый в память, который содержит все локали системы; он используется всеми локализованными программами, если не установлена переменная окружения LOCPATH.

В любом случае, localedef прекращает работу, если каталог, в который она пытается записать файлы локали, ещё не был создан.

Если файл карты символов не указан, то по умолчанию используется значение ANSI_X3.4-1968 (для ASCII). Если не указан входной файл, или если вместо него указан перенос (-), то localedef читает данные из стандартного входного потока.

ПАРАМЕТРЫ

Параметры действия-выбора

Некоторые параметры указывают localedef сделать что-то другое, а не компилировать определения локали. Одновременно может быть указан только один такой параметр.

Добавить каталоги путь_скомпилированного файл архива локалей. Каталоги должны быть созданы ранее запускавшимся localedef с параметром --no-archive.
Удалить заданную локаль из файла архива локалей.
Показать список локалей, содержащихся в файле архива локалей.

Другие параметры

Следующие параметры имеют значение только для определённых операций; обычно, по названию понятно для каких. Заметим, что параметры -f и -c работают не так как можно ожидать, то есть -f это не тоже самое что --force.

Задаёт файл, которым определяется набор символов, используемый в файле входных данных. Если значение файл_карты_символов содержит косую черту («/»), то оно рассматривается как название карты символов. В противном случае, файл ищется в текущем каталоге и каталоге по умолчанию для карт символов. Если установлена переменная окружения I18NPATH, то после текущего каталога также просматриваются $I18NPATH/charmaps/ и $I18NPATH/. Каталог по умолчанию для карт символов можно увидеть в выводе localedef --help.
Задаёт файл определения локали для компиляции. Файл ищется в текущем каталоге и каталоге по умолчанию для файлов определения локалей. Если установлена переменная окружения I18NPATH, то после текущего каталога также просматриваются $I18NPATH/locales/ и $I18NPATH. Каталог по умолчанию для файлов определения локалей можно увидеть в выводе localedef --help.
Из файла_набора читаются отображения символических имён в кодовые точки Юникода. Если значение файла_набора содержит косую черту («/»), то оно рассматривается имя пути карты набора (repertoire map). В противном случае, файл ищется в текущем каталоге и каталоге по умолчанию для карт наборов. Если установлена переменная окружения I18NPATH, то после текущего каталога также просматриваются $I18NPATH/repertoiremaps/ и $I18NPATH. Каталог по умолчанию для карт наборов можно увидеть в выводе localedef --help.
Использовать файл_псевдонимов для поиска псевдонимов имён локалей. Для файла псевдонимом нет файла по умолчанию.
Записывать файлы результата даже, если есть предупреждения при генерации входных данных.
Генерировать дополнительные предупреждения об ошибках, которые обычно игнорируются.
Генерировать вывод с прямым порядком байт (big endian).
Генерировать вывод с обратным порядком байт (little endian).
Не использовать файл архива локалей, вместо этого создать путь_результата в качестве подкаталога в текущем каталоге для файла архива локалей, и создать в нём отдельные файлы результата для категорий локали. Это позволяет не перезаписывать системный архив локалей пользовательскими локалями, созданными с помощью localedef.
Не создавать жёсткие ссылки между установленными локалями.
Разделенный запятыми список отключённых предупреждений; поддерживаемые предупреждения: ascii и intcurrsym.
Жёстко следовать POSIX. Подразумевает --verbose. Этот параметр, в настоящее время, больше ничего не делает. Соответствие POSIX предполагается, если установлена переменная окружения POSIXLY_CORRECT.
Указывает префикс полного пути к архиву. По умолчанию префикс пуст. Если указать в качестве префикса foo, то архив будет помещён в foo/usr/lib/locale/locale-archive.
Не показывать все уведомления и предупреждения; сообщать только о фатальных ошибках.
Заменить локаль в файле архива локалей. Без этого параметра, если локаль в архиве уже есть, то выдаётся ошибка.
Разделенный запятыми список включённых предупреждений; поддерживаемые предупреждения: ascii и intcurrsym.
-?, --help
Показать справку по использованию и завершить работу. Также выводятся пути по умолчанию, используемые в localedef.
Показать краткую справку по использованию и завершить работу.
Показать номер версии, лицензию и уведомление о гарантиях для localedef.

КОД РЕЗУЛЬТАТА

Программа localedef может возвращать один из следующих кодов завершения:

0
Команда успешно выполнена.
1
Произошла ошибка или предупреждение, файлы результата записаны.
4
Произошла ошибка, результат не записан.

ОКРУЖЕНИЕ

Если эта переменная окружения установлена, то предполагается флаг --posix.
Список каталогов через двоеточие для поиска файлов.

ФАЙЛЫ

/usr/share/i18n/charmaps
Обычный путь по умолчанию для файлов карт символов.
/usr/share/i18n/locales
Обычный путь по умолчанию для файлов определений локалей.
/usr/share/i18n/repertoiremaps
Обычный путь по умолчанию для файла карты набора.
/usr/lib/locale/locale-archive
Обычный путь по умолчанию для расположения архива локалей.
/usr/lib/locale
Обычный путь по умолчанию для скомпонованных файлов данных отдельных локалей.
Файл результата содержит информацию о формате адресов и географических элементах.
Файл результата содержит информацию о правилах сравнения строк.
Файл результата содержит информацию о классах символов.
Файл результата содержит метаданные о локали.
Файл результата содержит информацию о единицах измерения (метрическая или система мер США).
Файл результата содержит информацию о языке, на котором должны выводиться сообщения и как выглядят ответы «да» и «нет».
Файл результата содержит информацию о правилах написания денежных единиц.
Файл результата содержит информацию об описании персон.
Файл результата содержит информацию о правилах написания не денежных числовых единиц.
Файл результата содержит информацию о параметрах, относящихся к размерам бумаги.
Файл результата содержит информацию о форматах, используемых в телефонных службах.
Файл результата содержит информацию о форматах значений даты и времени.

СТАНДАРТЫ

POSIX.1-2008.

ПРИМЕРЫ

Компилирование файлов локали для финских пользователей с набором символов UTF-8 и добавление к архиву локалей по умолчанию с именем fi_FI.UTF-8:


localedef -f UTF-8 -i fi_FI fi_FI.UTF-8

В следующем примере делается тоже самое, но файлы генерируются в каталоге fi_FI.UTF-8, который затем можно использовать в программах, установив переменную окружения LOCPATH равной текущему каталогу (заметим, что последний аргумент должен содержать косую черту):


localedef -f UTF-8 -i fi_FI ./fi_FI.UTF-8

СМ. ТАКЖЕ

locale(1), charmap(5), locale(5), repertoiremap(5), locale(7)

ПЕРЕВОД

Русский перевод этой страницы руководства был сделан Artyom Kunyov <artkun@guitarplayer.ru>, Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Katrin Kutepova <blackkatelv@gmail.com>, Konstantin Shvaykovskiy <kot.shv@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.

12 марта 2023 г. Linux man-pages 6.05.01