Locale (Русский)

From ArchWiki
Jump to navigation Jump to search

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

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

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

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

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

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


Сначала нужно включить те локали, которые вы хотите использовать. Чтобы включить или выключить их используется файл /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/rc.conf. Поскольку мы добавили поддержку других локалей просто для совместимости, сдесь мы указываем только ru_RU.UTF-8:

LOCALE="ru_RU.UTF-8"

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

Collation

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

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

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

export LANG=en_AU.UTF-8

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

$ source ~/.bashrc

Setting starting weekday

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.

Ссылки