- Localization (Русский)
- Настройка
- Локаль
- Виртуальная консоль
- Xorg
- Шрифты
- Клавиатура
- Советы и рекомендации
- Русские man-страницы
- Перекодировка тегов MP3
- Font configuration/Examples
- Hinted fonts
- No hinting for italic or bold
- Enable anti-aliasing only for bigger fonts
- Disable bold font
- Disable ligatures for monospaced fonts
- Default fonts
- Arabic
- Japanese
- Chinese
- Chinese in Noto Fonts
- CJK, but other Latin fonts are preferred
- Alternate stylistic sets for fonts
Localization (Русский)
Под локализацией (localization, l10n) и интернационализацией (internationalization, i18n) понимается процесс адаптации программного обеспечения к культуре какой-либо страны (см. Википедия:Локализация программного обеспечения).
В статье описано, как настроить поддержку русского языка в Arch Linux.
Настройка
Локализация системы подразумевает главным образом три вещи: настройку локали и настройку клавиатуры в виртуальной консоли и графическом окружении (Xorg). Ниже приведены краткие рекомендации по каждому из пунктов без углубления в детали. Более подробную информацию можно найти в профильных статьях:
Локаль
Локаль — набор параметров, определяющий региональные настройки пользовательского интерфейса, такие как язык, страна, часовой пояс, набор символов, формат вывода даты, времени, используемая денежная единица. Чтобы настроить русскую локаль в вашей системе, следуйте инструкциям ниже.
Отредактируйте файл /etc/locale.gen , раскомментировав строку ru_RU.UTF-8 UTF-8 , после чего сгенерируйте локаль:
Проверьте, что заявленная локаль теперь доступна, выполнив locale -a . Когда локаль сгенерирована, установите её в качестве системной:
# localectl set-locale ru_RU.UTF-8
Перезагрузитесь, чтобы изменения вступили в силу. Команда locale без аргументов выводит список относящихся к настройкам локали переменных окружения. Если всё в порядке, то приложения должны «русифицироваться».
- Приложение русифицируется только в том случае, если такая возможность предусмотрена его программой.
- Собственные языковые настройки приложений имеют приоритет перед настройками локали.
Виртуальная консоль
Настройки виртуальной консоли хранятся в файле /etc/vconsole.conf . Создайте файл и добавьте в него следующие строки:
В примере используется шрифт cyr-sun16 из пакета kbd (установлен по умолчанию, зависимость systemd). Если необходим шрифт покрупнее, то набор Terminus содержит шрифты разных размеров с поддержкой кириллических символов. Установите пакет terminus-font , после чего задайте необходимый шрифт переменной FONT в файле /etc/vconsole.conf . Шрифты Terminus именуются по схеме ter-* , список доступных шрифтов можно вывести командой:
$ ls /usr/share/kbd/consolefonts/ | grep 'ter-' | cut -d. -f1
Изменения вступят в силу после перезагрузки. Переключение языков привязано к комбинации клавиш Ctrl+Shift .
Xorg
Шрифты
Установите пакеты ttf-dejavu и ttf-liberation со шрифтами DejaVu и Liberation соответственно.
Клавиатура
Прежде всего необходимо узнать модель клавиатуры. Откройте графический эмулятор терминала (не виртуальную консоль!) и выполните:
Команда вернёт список основных настроек клавиатуры. Нас интересует значение в строке model: . Например, стандартная клавиатура для ПК будет называться pc104 или pc105 . Для игровых клавиатур и клавиатур ноутбуков, которые часто имеют дополнительные клавиши, значение будет другим.
Задайте настройки клавиатуры с помощью утилиты localectl:
# localectl set-x11-keymap --no-convert us,ru pc105 "" grp:alt_shift_toggle
- us,ru — устанавливаются две языковые раскладки (layouts), английская (основная) и русская (дополнительная).
- pc105 — модель клавиатуры; если ваша модель отличается, то укажите её.
- «» — т.н. вариант раскладки. Поскольку указана пустая строка, то для обеих языковых раскладок будет использоваться вариант qwerty .
- grp:alt_shift_toggle — блок дополнительных опций; в примере задаётся всего одна опция, переключение языков по комбинации клавиш Alt+Shift .
Перезапустите Xorg или перезагрузитесь, чтобы изменения вступили в силу.
Советы и рекомендации
Русские man-страницы
Установите пакет man-pages-ru с русскими страницами.
man показывает страницы с учётом локали. Для принудительного показа русских страниц используйте следующую команду:
Перекодировка тегов MP3
Установите пакет python-mutagen и выполните следующую команду в каталоге с коллекцией MP3-файлов:
$ find -iname '*.mp3' -print0 | xargs -0 mid3iconv -eCP1251 --remove-v1
Команда перекодирует старые теги из кодировки CP1251 в UTF8, запишет тег версии id3v2.4 и удалит теги первой версии.
Примечание: Не все проигрыватели из ОС Windows понимают теги формата 2.4. Поведение при этом различное: от игнорирования тега, до ошибки о повреждённом файле.
$ mpc update # дождитесь завершения, статус можно смотреть запуская mpc без параметров $ mpc clear $ mpc listall
Font configuration/Examples
Configurations can vary to a degree. Please post Fontconfig configurations with an explanation for why they were done.
Hinted fonts
~/.config/fontconfig/fonts.conf
true false true hintslight lcddefault rgb
No hinting for italic or bold
true false lcddefault hintslight true rgb 15 lcdlight hintnone medium hintnone lcdlight 0 hintnone lcdlight
Enable anti-aliasing only for bigger fonts
Some users prefer the sharper rendering that anti-aliasing does not offer:
false 12 true 16 true
Disable bold font
For when a font does not present itself well in bold and you cannot disable bold fonts in the application (st for example).
.. Envy Code R medium medium
Disable ligatures for monospaced fonts
This prevents letter combinations like «ffi» from being squashed into a single-width character in some monospaced fonts. The whole block needs to be duplicated to include extra fonts.
Disable ligatures for monospaced fonts to avoid ff, fi, ffi, etc. becoming only one character wide Nimbus Mono PS liga off dlig off
Some other fonts may also require disabling features such as calt and/or clig .
You can test the effectiveness of this with the following command:
$ echo -e "| worksheet |\n| buffering |\n| difficult |\n| finishing |\n| different |\n| efficient |" | pango-view --font="Nimbus Mono PS" /dev/stdin
Some programs (such as Firefox) do not support the fontfeatures tag, so for those replacing the font with another is the only option. See Font configuration#Set default or fallback fonts for details.
Note: Starting with Firefox version 114, fontconfig settings such as fontfeatures will be supported.
Default fonts
For font consistency, all applications should be set to use the serif, sans-serif, and monospace aliases, which are mapped to particular fonts by fontconfig. See Metric-compatible fonts for options and examples.
Arabic
Example fonts.conf which specifies a default font for the Arabic language and keeps western style fonts for Latin letters. You will require either ttf-arabeyes-fonts AUR or noto-fonts for the below to work. You can also choose to install any other Arabic fonts and accordingly change the font name below based on your preference
The above should work for most applications but some applications like Chromium do not work with the language match test. If you find some applications not using your selected fonts, you can use the below alias and prefer tags which seems to work.
sans-serif Noto Sans Open Sans Droid Sans Roboto Tholoth Noto Sans Arabic serif Noto Serif Droid Serif Roboto Slab Tholoth Noto Sans Arabic monospace Noto Sans Mono Inconsolata Droid Sans Mono Roboto Mono
Japanese
Example fonts.conf which also specifies a default font for the Japanese locale (ja_JP) and keeps western style fonts for Latin letters.
Noto Sans ja Noto Sans CJK JP sans-serif ja -->Noto Sans serif Noto Serif IPAPMincho HanaMinA monospace Noto Sans Mono Inconsolatazi4 IPAGothic sans-serif Noto Sans Open Sans Droid Sans Ubuntu Roboto NotoSansCJK Source Han Sans JP IPAPGothic VL PGothic Koruri serif Noto Serif Droid Serif Roboto Slab IPAPMincho monospace Noto Sans Mono Inconsolatazi4 Ubuntu Mono Droid Sans Mono Roboto Mono IPAGothic
Chinese
~/.config/fontconfig/fonts.conf or /etc/fonts/local.conf
false serif Noto Serif sans-serif Roboto monospace DejaVu Sans Mono zh serif Source Han Serif CN zh sans-serif Source Han Sans CN zh monospace Noto Sans Mono CJK SC WenQuanYi Zen Hei Source Han Sans CN WenQuanYi Micro Hei Source Han Sans CN WenQuanYi Micro Hei Light Source Han Sans CN Microsoft YaHei Source Han Sans CN SimHei Source Han Sans CN SimSun Source Han Serif CN SimSun-18030 Source Han Serif CN
Chinese in Noto Fonts
Apply Noto Fonts while replacing Microsoft Fonts with WenQuanYi Micro Hei
~/.config/fontconfig/fonts.conf or /etc/fonts/local.conf
false serif Noto Serif sans-serif Noto Sans monospace Noto Sans Mono zh serif Noto Serif CJK SC zh sans-serif Noto Sans CJK SC WenQuanYi Micro Hei --> zh monospace Noto Sans Mono CJK SC WenQuanYi Zen Hei WenQuanYi Micro Hei WenQuanYi Zen Hei Lite WenQuanYi Micro Hei Lite WenQuanYi Micro Hei --> WenQuanYi Zen Hei Mono WenQuanYi Micro Hei Mono Microsoft YaHei WenQuanYi Micro Hei SimHei WenQuanYi Micro Hei SimSun WenQuanYi Micro Hei SimSun-18030 WenQuanYi Micro Hei
CJK, but other Latin fonts are preferred
You can replace PT Serif / Roboto / Cascadia Code PL with your favorite serif / sans-serif / monospace fonts.
~/.config/fontconfig/fonts.conf
serif PT Serif sans-serif Roboto monospace Cascadia Code PL system-ui Roboto serif Noto Serif CJK SC ja serif Noto Serif CJK JP ko serif Noto Serif CJK KR zh serif Noto Serif CJK SC zh-hans serif Noto Serif CJK SC zh-hant serif Noto Serif CJK TC zh-cn serif Noto Serif CJK SC zh-tw serif Noto Serif CJK TC sans-serif Noto Sans CJK SC ja sans-serif Noto Sans CJK JP ko sans-serif Noto Sans CJK KR zh sans-serif Noto Sans CJK SC zh-hans sans-serif Noto Sans CJK SC zh-hant sans-serif Noto Sans CJK TC zh-hant-hk sans-serif Noto Sans CJK HK zh-cn sans-serif Noto Sans CJK SC zh-tw sans-serif Noto Sans CJK TC zh-hk sans-serif Noto Sans CJK HK monospace Noto Sans Mono CJK SC ja monospace Noto Sans Mono CJK JP ko monospace Noto Sans Mono CJK KR zh monospace Noto Sans Mono CJK SC zh-hans monospace Noto Sans Mono CJK SC zh-hant monospace Noto Sans Mono CJK TC zh-hant-hk monospace Noto Sans Mono CJK HK zh-cn monospace Noto Sans Mono CJK SC zh-tw monospace Noto Sans Mono CJK TC zh-hk monospace Noto Sans Mono CJK HK system-ui Noto Sans CJK SC ja system-ui Noto Sans CJK JP ko system-ui Noto Sans CJK KR zh system-ui Noto Sans CJK SC zh-hans system-ui Noto Sans CJK SC zh-hant system-ui Noto Sans CJK TC zh-hant-hk system-ui Noto Sans CJK HK zh-cn system-ui Noto Sans CJK SC zh-tw system-ui Noto Sans CJK TC zh-hk system-ui Noto Sans CJK HK
Alternate stylistic sets for fonts
Certain fonts come with alternate stylistic sets for characters through an OpenType feature. Generally these stylistic sets are named ss0x and contain small changes to individual characters. This shows how to change the default dotted zero to a slashed zero for the monospace version of ttf-ibm-plex .
~/.config/fontconfig/fonts.conf
See What are «Stylistic Sets?» for more information on this.