Вопрос или проблема
Я использовал Linux Mint, теперь пробую основную версию Ubuntu 18. Вверху Gnome отображаются день недели/время. Я начал с этого, хотев изменить его на английский, установив региональные параметры на русский через GUI, и заметил, что часовой пояс менялся, если я устанавливал региональные параметры на США.
Я читал и пробовал следующий способ: How to get current or set wanted regional format in the terminal?
Странно, после sudo update-locale LC_TIME=en_CA.UTF-8
и даже перезагрузки ПК, в файле /etc/default/locale
указано CA, но команда locale
в bash выдает RU. И день недели вверху экрана все еще на русском. Почему данные в файле и по команде разные? Как изменить язык вверху экрана, это какой-то переменной с датой, где её найти?
Дополнительно, возможно ли и как изменить точки в десятичных дробях и разделители тысяч по своему усмотрению?
Что касается сообщения наверху экрана, ниже приведены шаги, например, для Российской Федерации:
-
Отредактируйте
/usr/share/i18n/locales/ru_RU
(например, с помощьюsudo nautilus
): измените строкуabday
наabday "Sun";"Mon";"Tue";"Wed";"Thu";"Fri";"Sat"
-
Сгенерируйте локали:
$ sudo locale-gen ru_RU.UTF-8
-
Установите формат в настройках на Российскую Федерацию (сначала я хотел создать свою локаль, но не нашел, как создать новую территорию, чтобы она появилась в списке в настройках, например, в
/usr/share/i18n/locales/ru_RU
territory "Russia"
, но в настройках написаноRussian Federation
– пожалуйста, кто-нибудь исправьте или прокомментируйте, как это можно сделать). -
Перезайдите в систему
Для десятичных знаков я изменил это в /usr/share/i18n/locales/ru_RU
, это отображается правильно в настройках формата Ubuntu, однако почему-то не работает в LibreOffice Calc по неизвестной мне причине.
Ответ или решение
Конечно! Давайте подробно разберём процесс изменения региональных настроек в Linux, учитывая вашу ситуацию с Ubuntu 18 и Gnome.
Теория
В Linux региональные настройки управляются с помощью переменных окружения, таких как LANG
, LC_TIME
, LC_NUMERIC
и другие. Эти переменные позволяют системе знать, какие языковые и форматы даты, времени, чисел и валюты использовать. По умолчанию настройки сохраняются в файле /etc/default/locale
.
Основная задача заключается в изменении параметров LC_TIME
и LC_NUMERIC
, чтобы они соответствовали вашим предпочтениям. Однако, иногда изменения, сделанные в этом файле, могут конфликтовать с настройками рабочего окружения или приложениями, такими как Gnome или LibreOffice.
Пример
-
Изменение региональных настроек через терминал
Сначала изменим локаль для времени:
sudo update-locale LC_TIME=en_CA.UTF-8
После этого изменения должны отразиться в
/etc/default/locale
. Однако, как вы заметили, выполнение командыlocale
в терминале может по-прежнему возвращать предыдущие настройки, например,RU
. Причина этого может быть в том, что текущая сессия вашей оболочки или графическое окружение Gnome могут переопределять системные настройки на уровне пользователя. -
Изменение формата отображения на панели Gnome
Для корректного отображения дней недели и времени выполнения на панели Gnome необходимо убедиться, что переменные окружения установлены правильно для вашей сессии. Перезапустите рабочее окружение или перенастройте параметры языка через графический интерфейс:
- Откройте настройки системы и перейдите к "Язык и Регион".
- Убедитесь, что язык интерфейса и формат региона выбраны корректно.
Если проблема остаётся, вы также можете напрямую изменить файлы локали. Например:
sudo nano /usr/share/i18n/locales/ru_RU
В этом файле можно изменить сокращенные названия дней недели, как вы уже продемонстрировали:
abday "Sun";"Mon";"Tue";"Wed";"Thu";"Fri";"Sat"
-
Изменение десятичного разделителя и разделителя тысяч
Изменение параметров десятчных и тысячных разделителей, к сожалению, требует изменения отдельных компонентов локализации. Например, строкой
decimal_point
можно изменить:decimal_point "<текущий_разделитель>"
Следующая строка может изменить разделитель тысяч:
thousands_sep "<текущий_разделитель>"
После внесения изменений выполните:
sudo locale-gen ru_RU.UTF-8
-
Проблема с LibreOffice
Если изменения не отражаются в таких приложениях, как LibreOffice, возможно, стоит проверить настройки самого приложения:
- Откройте LibreOffice и перейдите в "Инструменты" → "Параметры" → "Язык настроек".
- Убедитесь, что выбранные региональные настройки соответствуют вашим корректировкам.
Применение
-
Ваша задача: Стремитесь точно определить источник конфликта в ваших региональных настройках. Это может быть через смешивание параметров системных, пользовательских и приложенческих настроек.
-
Предложение: Рекомендуется после изменений производить лог-аут и повторный вход в систему, чтобы убедиться в обновлении всех активных переменных окружения для текущей сессии.
-
Совет: Для минимизации влияния изменений стоит использовать временные переменные окружения в терминале: например,
LC_TIME=en_CA.UTF-8 gnome-calendar
, чтобы проверить, как отдельное приложение отреагирует на потенциальные конфликты локали.
Надеюсь, эти шаги и рассмотрения помогут вам устранить конфликты в ваших региональных настройках Linux и настроить систему в соответствии с вашими предпочтениями.