Как установить локаль системы на английский (Индия), а не на английский в Ubuntu 23.04?

Вопрос или проблема

Я хочу, чтобы языковые настройки моей системы были английский (Индия), а не английский (США). Я попробовал опцию командной строки ядра locale.LANGUAGE=en_IN.UTF-8 при загрузке. Однако приложение Writer в пакете LibreOffice все равно выбирает английский (США) как язык. Я пробовал следующее в командной строке, чтобы Writer выбрал английский (Индия):

alias soffice=$( which soffice )\ --nologo\ \2\>\>\ ${XDG_RUNTIME_DIR}/soffice_output.txt ; alias soffice ; LANG=en_IN.UTF-8 soffice &

Обратитесь к выводу следующей команды для получения подробной информации:

ramumsrk@ubuntu-23-04-lunar-lobster-desktop-amd64:~/Desktop$ localectl
      Warning: Settings on kernel command line override system locale settings in /etc/locale.conf.
 Command Line: LANGUAGE=en_IN.UTF-8         
System Locale: LANG=en_US.UTF-8
               LANGUAGE=en
               LC_NUMERIC=en_IN.UTF-8
               LC_TIME=en_IN.UTF-8
               LC_MONETARY=en_IN.UTF-8
               LC_PAPER=en_IN.UTF-8
               LC_NAME=en_IN.UTF-8
               LC_ADDRESS=en_IN.UTF-8
               LC_TELEPHONE=en_IN.UTF-8
               LC_MEASUREMENT=en_IN.UTF-8
               LC_IDENTIFICATION=en_IN.UTF-8
    VC Keymap: (unset)                      
   X11 Layout: us,in
    X11 Model: pc105
  X11 Variant: ,eng
  X11 Options: grp_led:scroll

Как я могу установить языковые настройки системы на английский (Индия), а не на английский на Ubuntu 23.04?

Опции языка уменьшены до тех, для которых имеются переводы. В вашем случае, так как нет переводов на английский (Индия), система просто устанавливает по умолчанию en_US.UTF-8.

Примеры других английских локалей, которые можно установить, это en_GB.UTF-8 и en_CA.UTF.8, так как существуют переводы на британский и канадский английский.

Вы можете перейти в Настройки -> Регион и язык, чтобы понять, почему так настроено. Не имело бы смысла предоставлять 15-20 различных вариантов английского языка в этом интерфейсе, не так ли?

Если ваша локаль en_IN.UTF-8 отсутствует, сгенерируйте ее: (Найдите строку и раскомментируйте ее:)

sudo nano /etc/locale.gen
en_IN UTF-8

затем

sudo locale-gen

Теперь вы установили en_IN.UTF-8 на своем компьютере и виртуальном терминале, и у вас должен быть выход, указанный ниже.

LANG=en_IN.UTF-8 LANGUAGE=en_IN:en LC_CTYPE=”en_IN.UTF-8″
LC_NUMERIC=”en_IN.UTF-8″ LC_TIME=”en_IN.UTF-8″
LC_COLLATE=”en_IN.UTF-8″ LC_MONETARY=”en_IN.UTF-8″
LC_MESSAGES=”en_IN.UTF-8″ LC_PAPER=”en_IN.UTF-8″ LC_NAME=”en_IN.UTF-8″
LC_ADDRESS=”en_IN.UTF-8″ LC_TELEPHONE=”en_IN.UTF-8″
LC_MEASUREMENT=”en_IN.UTF-8″ LC_IDENTIFICATION=”en_IN.UTF-8″
LC_ALL=en_IN.UTF-8

Ниже приводится необязательный шаг

sudo localectl set-locale LANG=en_IN.UTF-8
set -Ux LANG en_UI.UTF-8
set -Ux LC_ALL en_UI.UTF-8

#Чтобы сделать это постоянным, добавьте в config.fish:

nano ~/.config/fish/config.fish
set -gx LANG en_US.UTF-8
set -gx LC_ALL en_US.UTF-8
source ~/.config/fish/config.fish

#для тестирования

locale

Ответ или решение

Настройка локали системы на Ubuntu — важный аспект, который определяет, как система обрабатывает текстовые данные в различных представлениях и форматах. Это может иметь значение для приложений, таких как LibreOffice Writer, который по умолчанию может использовать локаль, отличающуюся от желаемой, например, английской (Индия). Для достижения вашей цели, чтобы система использовала локаль en_IN.UTF-8, вы можете следовать подробным инструкциям, приведенным ниже.

Теория (Theory)

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

Применение примера (Example Application)

В вашем случае вы столкнулись с проблемой, что используемая Writer в LibreOffice локаль — это английский (США), в то время как вы предпочитаете английский (Индия).

Перед тем как приступать к изменениям, вы упомянули о попытке использования параметра командной строки ядра: locale.LANGUAGE=en_IN.UTF-8, который, возможно, не работает в вашем случае из-за отсутствия полного набора английской (Индия) локали. Это требует дополнительных действий для полной поддержки такой локали.

Как установить системную локаль на English (India)

  1. Проверка наличия локали:

    Во-первых, необходимо убедиться, что локаль en_IN.UTF-8 доступна в вашей системе для использования. Это делается через редактирование файла /etc/locale.gen.

    sudo nano /etc/locale.gen

    Найдите строку en_IN.UTF-8, если она закомментирована, разкомментируйте ее, удаляя знак # в начале строки. Это действие обеспечит поддержку благодарения en_IN.UTF-8.

  2. Генерация локали:

    Чтобы изменения вступили в силу, необходимо сгенерировать локаль:

    sudo locale-gen

    Выполняйте данную команду для генерации всех выбранных в файле локалей.

  3. Настройка системных параметров локализации:

    Теперь, когда локаль доступна, необходимо настроить системные параметры:

    sudo localectl set-locale LANG=en_IN.UTF-8

    Эта команда изменит системную локаль, что повлияет на многие приложения, в том числе на LibreOffice Writer, если она совместима с этой локалью.

  4. Проверка настроек локали:

    Чтобы убедиться, что изменения были приняты системой, выполните команду:

    locale

    Убедитесь, что параметры LANG, LC_COLLATE и другие установлены на en_IN.UTF-8.

  5. Дополнительные конфигурации:

    Если вы используете оболочку fish, вам также следует настроить переменные окружения в соответствующем конфигурационном файле:

    Откройте файл config.fish в текстовом редакторе:

    nano ~/.config/fish/config.fish

    Добавьте или измените следующие строки:

    set -gx LANG en_IN.UTF-8
    set -gx LC_ALL en_IN.UTF-8
    source ~/.config/fish/config.fish

    Это закрепит ваши изменения и обеспечит, что они будут сохраняться между перезагрузками терминала.

Заключение

Следуя этим инструкциям, вы сможете изменить системную локаль на английский (Индия) в Ubuntu 23.04. Эти изменения могут повлиять на отображение текста, формат даты, времени и чисел в приложениях. Однако помните, что некоторые интерфейсы могут игнорировать системные настройки локали, если сочтут их несовместимыми или не удтвердить поддержку соответствующих языков. В таких случаях настройка локали может быть менее очевидной и требовать дополнительных манипуляций на уровне конкретных приложений.

Эта пошаговая инструкция обеспечит исполнение на профессиональном уровне и достигнет целей применения английского (Индия) в вашей системе.

Оцените материал
Добавить комментарий

Капча загружается...