Как отобразить раскладку клавиатуры консоли на раскладку клавиатуры X в Linux

8

В моем дистрибутиве (Slackware 13.37) раскладка клавиатуры консоли выбрана среди некоторых из доступных в /usr/share/kbd/keymaps'подкаталогах, поступающих из пакета kbd.

Вместо X вместо раскладки клавиатуры выбирается список «раскладок», включенный в файл /etc/X11/xkb/rules/evdev.lst.

Кто-нибудь знает способ, учитывая некоторую раскладку консоли, сопоставить ее с раскладкой клавиатуры X, чтобы соответственно настроить параметр «XkbLayout» в файле конфигурации X?

Мне особенно интересно знать, как другие дистрибутивы, кроме Slackware, справляются с этим для начальной конфигурации.

Дидье Спайер
источник

Ответы:

2

Ну, насколько я понимаю, в Debian /etc/default/keyboardвы устанавливаете переменные XKB{MODEL,LAYOUT,VARIANT,OPTIONS}со значениями, которые вы использовали бы для XKB.

Затем, при загрузке, setupcon(1)читает эти переменные и вызовы ckbcomp(1), которые, как говорится на его man-странице, «скомпилируют [s] описание клавиатуры XKB в таблицу клавиш, подходящую для loadkeysили kbdcontrol».

Наконец, loadkeys(1)вызывается на скомпилированный файл.

НТН.

(Или, может быть, вы имели в виду обратное. Сейчас я не совсем уверен ...)

Ангус
источник
У Slackware 13.37 нет / etc / default / клавиатуры
LnxSlck
0

В этом нет никакой магии, дистрибутивы просто должны поддерживать массив триплетов: «текстовое описание раскладки клавиатуры», «опции раскладки клавиатуры консоли», «опции раскладки клавиатуры X11» и предоставляют инструмент для выбора и настройки раскладок.

Если дистрибутив не делает этого, то пользователь должен вручную сконфигурировать консоль и клавиатуру X11, и, таким образом, пользователь может сделать их связными.

Пабло Саратчага
источник