Locale (Русский)

From ArchWiki
Jump to: navigation, search

Локали (locales) используются в Linux чтобы определить каким языком пользуется пользователь. Также локали определяют набор символов, которыми пользуется пользователь; настройка правильной локали особенно важно, если язык содержит не-ASCII символы.

Названия локали определяется так:

<язык>_<страна>.<кодировка>[@<модификатор>]

В этой статье мы используем локаль ru_RU.UTF-8, но вы можете проделать все это с любой другой локалью.

Contents

Включение нужных локалей

Ознакомьтесь также со статьей Internationalization_(Русский)


Сначала нужно включить те локали, которые вы хотите использовать. Чтобы включить или выключить их используется файл /etc/locale.gen. Он содержит все возможные локали, чтобы включить любую из них, раскомментируйте соответствующую строчку.

Поскольку мы хотим установить Русский язык с кодировкой utf-8, мы включаем локаль ru_RU.UTF-8. Но для совместимости с программами, которые не поддерживают Русский язык и/или utf-8, рекомендуется включить поддержку всех локалей, начинающихся с ru_RU и en_US.

После включения нужных локалей нужно запустить в терминале из под root locale-gen, чтобы обновить их.

# locale-gen
Generating locales...
  en_US.UTF-8... done
  en_US.ISO-8859-1... done
  ru_RU.KOI8-R... done
  ru_RU.UTF-8... done
  ru_RU.ISO-8859-5... done
Generation complete.

Установка системной локали

Чтобы определить, какая локаль будет использоваться в системе, вам нужно просто указать ее в файле /etc/locale.conf. Для того, чтобы установить локаль добавьте в /etc/locale.conf (его может не существовать - тогда просто создайте его) строчку:

LANG="ru_RU.UTF-8"

Эти настройки вступят в силу после перезагрузки.

Collation

Установка локали для отдельного пользователя

Как написано ранее, некоторые пользователи возможно захотят установить локаль отличную от системной. Вы можете установить локаль для конкретного пользователя в его файле ~/.bashrc

Например установим локаль en_AU.UTF-8.

export LANG=en_AU.UTF-8

Ваша локаль обновляется после исполнения вашего ~/.bashrc. Это происходит когда вы входите в систему, или вы можете выполнить:

$ source ~/.bashrc

Установка первого дня недели

Во многих странах первым днем недели является понедельник. Для этого следует изменить или добавить следующие строки в секцию LC_TIME в /usr/share/i18n/locales/<your_locale>:

week            7;19971130;5
first_weekday   2
first_workday   2

И затем выполнить от рута:

# locale-gen

Troubleshooting

Как узнать какие локали доступны сейчас?

Выполните:

$ locale -a

Как узнать какая локаль используется сейчас?

Выполните:

$ locale

Мой терминал не поддерживает UTF-8

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

Терминалы, поддерживающие UTF-8:

  • gnome-terminal
  • gnustep-terminal
  • konsole
  • mlterm
  • urxvt (rxvt-unicode)
  • xfce-terminal
  • xterm

Примечание: это далеко не полный список.

у меня xterm не поддерживает UTF-8

xterm поддерживает UTF-8 если запустить его как uxterm или xterm -u8.

Ссылки