Как создать новую системную локаль
Поэтому я хочу создать своего рода международную английскую локализацию США с измерением метрики / СИ, размером бумаги А4, форматом даты ISO и т. Д.
Из того, что я понимаю, локали определяются в /usr/share/i18n/locales
, Смогу ли я указать здесь локаль и узнать ее при выборе локали? Как бы я назвал файл для этой локали? Где я могу найти информацию о формате файла и допустимых значениях для различных настроек?
2 ответа
У нас есть документация на вики-страницах, которая описывает, как добавить новый язык в Ubuntu. В двух словах:
Выберите название локали. Формат
language_REGION@modifier
где языком является двухбуквенный код ISO 639-2 (или трехбуквенный, если первый не доступен), REGION - это код ISO 3166, представляющий регион, на котором говорят на этом языке, а модификатор не имеет установленного синтаксиса и может использоваться для указания расширенного использования для локали (например, другой скрипт). Большинству локалей не понадобится модификатор.- Примеры: bn_ID - локаль для бенгальского языка в Индии, it_CH - локаль для итальянского языка в Швейцарии.
Создайте файл с таким именем. Как только имя будет выбрано, вам нужно будет создать файл с таким именем, который будет содержать определение вашей локали. Обратите внимание, что если на вашем языке говорят в разных регионах, вам, возможно, придется создавать разные файлы, по одному для каждого региона.
- Пример: ca_AD, ca_ES, ca_FR, ca_IT - определения локали для каталонского языка, на котором говорят в регионах Андорры, Испании, Франции и Италии.
Определите локаль. На этом этапе вам нужно будет заполнить файл определением вашего языка. Файлы определения локали имеют определенный синтаксис. Обратитесь к дополнительным ресурсам ниже, чтобы узнать об этом синтаксисе и о том, как определить новую локаль. Просматривая доступные файлы локали в источниках glibc, можно получить представление о формате. Также не забывайте повторно использовать: используйте оператор копирования для включения разделов из локалей с одинаковым содержанием.
Проверьте определение локали. Как только ваш файл локали или файлы готовы, вы должны проверить их локально, чтобы убедиться, что они правильные. Основные шаги:
- копирование файла в
/usr/share/i18n/locales/
, выполнение следующей команды для создания двоичного файла, который будет использоваться приложениями, и проведение реального теста.
localedef -i inputfile -c -f <charset> <locale>
Пример (тестирование астурийской локали с помощью команды date):
cp ast_ES /usr/share/i18n/locales/ast_ES localedef -i ast_ES -c -f ISO-8859-15 ast_ES LANG=ast_ES date
- копирование файла в
Дополнительные ресурсы по созданию локали glibc:
- Документ определения локали IBM
- Доступные файлы локали в источниках glibc (нажмите на ссылку BLOB -объекта, чтобы просмотреть содержимое файла)
- Советы по написанию файла локали glibc
- Glibc Документация по localedef
- Перевести документацию проекта Toolkit
- Примеры:
Скомпилируйте ваш язык, используя:
sudo localedef -i custom -f UTF-8 custom.UTF-8 -c -v
где custom - имя вашего файла локали и скопируйте файл локали в /usr/share/i18n/locales/
чем sudo locale-gen
и изменить /etc/environment
или же ~/.profile
, сделанный!!!
What would I name the file for this locale?
Вы можете дать любое название вашего местного
Would I be able to put the locale in here and have it be recognized when choosing a locale?
Вы должны указать пользовательский язык в /etc/environment
или же ~/.profile
Where could I find information on file format and valid values for the various settings?
Вы можете обратиться по этой ссылке для получения дополнительной информации: Как я могу настроить язык системы? и http://lh.2xlibre.net/locales/