Я хочу запустити X із застосуванням моєї спеціалізованої клавішної карти XKB.
У мене є ім'я файлу символів xkb hyper
, який відображає клавішу Hyper на праву клавішу управління. Я вкладаю це /usr/share/X11/xkb/symbols/hyper
. Зміст:
partial modifier_keys
xkb_symbols "right_control" {
key <RCTL> { [ Hyper_R ] };
include "hyper(base)"
};
// I might want hyper on a different key, which needs the same modifier setup
partial modifier_keys
xkb_symbols "base" {
modifier_map Control { <LCTL> };
modifier_map Mod1 { <LALT>, <RALT> };
modifier_map Mod3 { Hyper_L, Hyper_R };
modifier_map Mod4 { <LWIN>, <RWIN> };
};
У мене також є файл ключової карти:
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+inet(evdev)+ctrl(nocaps)+hyper(right_control)" };
xkb_geometry { include "pc(pc105)" };
};
Якщо я біжу xkbcomp keymap-file
, все переробляється саме так, як я хочу, тому я знаю, що ця частина працює. Однак я не можу дозволити це застосувати під час запуску X.
У мене є такий фрагмент /etc/X11/xorg.conf.d/10-xps13-keyboard.conf
:
Section "InputClass"
Identifier "Dell XPS13 Keyboard"
MatchIsKeyboard "on"
Option "xkb_symbols" "pc+us+inet(evdev)+ctrl(nocaps)+hyper(right_control)"
EndSection
І я бачу параметри, застосовані до журналу сервера:
[ 11469.810] (II) config/udev: Adding input device AT Translated Set 2 keyboard (/dev/input/event0)
[ 11469.810] (**) AT Translated Set 2 keyboard: Applying InputClass "libinput keyboard catchall"
[ 11469.810] (**) AT Translated Set 2 keyboard: Applying InputClass "Dell XPS13 Keyboard"
[ 11469.810] (II) Using input driver 'libinput' for 'AT Translated Set 2 keyboard'
[ 11469.811] (II) systemd-logind: got fd for /dev/input/event0 13:64 fd 30 paused 0
[ 11469.811] Option "_source" "server/udev"
[ 11469.811] Option "name" "AT Translated Set 2 keyboard"
[ 11469.811] Option "path" "/dev/input/event0"
[ 11469.811] Option "device" "/dev/input/event0"
[ 11469.811] Option "major" "13"
[ 11469.811] Option "minor" "64"
[ 11469.811] Option "xkb_layout" "us"
[ 11469.811] Option "xkb_model" "pc105"
[ 11469.811] Option "xkb_options" "ctrl:nocaps"
[ 11469.811] Option "config_info" "udev:/sys/devices/platform/i8042/serio0/input/input0/event0"
[ 11469.811] Option "driver" "libinput"
[ 11469.811] Option "xkb_symbols" "pc+us+inet(evdev)+ctrl(nocaps)+hyper(right_control)"
[ 11469.811] Option "fd" "30"
Однак карта клавіш не завантажується при запуску X.
Я припускаю , що xkb_symbols
це неправильно Option
, але libinput(4)
не згадує клавіатури взагалі , так що я не знаю , що Option
з доступні.
Я бігаю з розтяжкою Debian.