Keyboard configuration in console (Русский)

From ArchWiki
Revision as of 19:18, 8 March 2018 by Lahwaacz.bot (talk | contribs) (flagged broken section links (interactive))
Jump to: navigation, search
Состояние перевода: На этой странице представлен перевод статьи Keyboard configuration in console. Дата последней синхронизации: 23 июля 2017. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Tango-preferences-desktop-locale.pngЭта страница нуждается в сопроводителеTango-preferences-desktop-locale.png

Статья не гарантирует актуальность информации. Помогите русскоязычному сообществу поддержкой подобных страниц. См. Команда переводчиков ArchWiki
Примечание: В этой статье описана лишь базовая настройка без модификации раскладок, назначения действий для дополнительных клавиш и т.п. Информацию по этим темам можно найти в статье Дополнительные клавиши

Сопоставление клавиш (раскладки) для виртуальной консоли, консольных шрифтов и консольных карт предоставляется пакетом kbd (зависимость от systemd), который также предоставляет множество инструментов низкого уровня для управления виртуальной консолью. Кроме того, systemd также предоставляет инструмент localectl, который может контролировать как локали системы, так и настройки раскладки клавиатуры как для виртуальной консоли, так и для Xorg.

Просмотр настроек клавиатуры

Используйте localectl status для просмотра текущих конфигураций клавиатуры.

Настройка раскладки клавиатуры

Коды клавиш

Обычно один файл keymap соответствует одной раскладке клавиатуры (оператор include может использоваться для совместного использования общих частей, а файл keymap может содержать несколько макетов с некоторой комбинацией клавиш, используемой для переключения). Файлы раскладок хранятся в дереве каталогов /usr/share/kbd/keymaps/.

Соглашения об именах консольных раскладок несколько условны, но обычно они основаны на:

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

$ localectl list-keymaps

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

$ localectl list-keymaps | grep -i search_term

Альтернативно, используя find:

$ find /usr/share/kbd/keymaps/ -type f

Постоянная конфигурация

Постоянную комбинацию клавиш можно установить в /etc/vconsole.conf, которая считывается systemd при запуске. Для указания раскладки используется переменная KEYMAP. Если переменная пуста или не установлена, в качестве значения по умолчанию используется комбинация клавиш us. Смотрите vconsole.conf(5) для получения информации обо всех параметрах. Например:

/etc/vconsole.conf
KEYMAP=uk
...

Для удобства, localectl можно использовать для настройки раскладки клавиатуры. Он изменит переменную KEYMAP в /etc/vconsole.conf, а также установит раскладку для текущего сеанса:

$ localectl set-keymap --no-convert keymap

Опцию --no-convert можно использовать для предотвращения localectl автоматического изменения раскладки клавиатуры Xorg до ближайшего совпадения. Для получения допольнительной информации смотрите localectl(1).

Временная конфигурация

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

Инструмент loadkeys используется для этой цели, он используется внутри systemd при загрузке раскладки клавиатуры, настроенной в /etc/vconsole.conf. Его можно использовать очень просто для этой цели:

# loadkeys keymap

Для получения допольнительной информации смотрите loadkeys(1).

Регулировка typematic задержки и скорости

Typematic задержка означает количество времени (обычно в милисекундах), за которое необходимо нажать и удерживать клавишу для начала повторного процесса. После запуска повторяющегося процесса символ будет повторяться с определенной частотой (обычно заданной в Гц), указанной typematic скоростью. Эти значения могут быть изменены с помощью команды kbdrate. Обратите внимание, что эти настройки настраиваются отдельно для виртуальной консоли и для Xorg[broken link: invalid section].

# kbdrate [-d delay] [-r rate]

Например, чтобы установить typematic задержку в 200 мс и typematic скорость в 30 Гц, используйте следующую команду:

# kbdrate -d 200 -r 30

Выдача команды без указания задержки и скорости приведет к сбросу typematic значений до их соответствующих значений по умолчанию; задержка 250 мс и скорость 11 Гц:

# kbdrate

Служба systemd

Сервис systemd можно использовать для установки скорости клавиатуры. Например

/etc/systemd/system/kbdrate.service

[Unit]
Description=Keyboard repeat rate in tty.

[Service]
Type=oneshot
RemainAfterExit=yes
StandardInput=tty
StandardOutput=tty
ExecStart=/usr/bin/kbdrate -s -d 450 -r 60
 
[Install]
WantedBy=multi-user.target

Затем запустите/включите службу systemd kbdrate.service.