# Locale (Русский)

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

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

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

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

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

Ознакомьтесь также со статьей 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.

## Ссылки

- Gentoo Linux Localization Guide
- Gentoo Wiki Archives: Locales
- ICU's interactive collation testing
- Free Standards Group Open Internationalisation Initiative

Category:

- Русский