Ich möchte, dass X mit meiner angepassten XKB-Keymap gestartet wird.
Ich habe eine xkb-Symboldatei mit dem Namen hyper
, die den Hyper-Schlüssel dem rechten Steuerschlüssel zuordnet . Ich habe das reingelegt /usr/share/X11/xkb/symbols/hyper
. Inhalt:
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> };
};
Ich habe auch eine Keymap-Datei:
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)" };
};
Wenn ich xkbcomp keymap-file
renne, passt sich alles genau meinen Wünschen an, sodass ich weiß, dass dieser Teil funktioniert. Ich kann dies jedoch nicht anwenden, wenn X gestartet wird.
Ich habe den folgenden Ausschnitt in /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
Und ich sehe die Optionen, die im Serverprotokoll angewendet werden:
[ 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"
Die Tastaturbelegung wird jedoch nicht geladen, wenn X gestartet wird.
Ich gehe davon aus, dass xkb_symbols
das falsch ist Option
, aber libinput(4)
nicht erwähnt , Tastaturen überhaupt , so dass ich weiß nicht , was Option
s zur Verfügung steht.
Ich verwende Debian Stretch.