Как отключить/переназначить клавиши клавиатуры в ядре?

Как отключить/переназначить клавиши клавиатуры в ядре?

Я хотел бы переназначить клавишу Caps Lock либо на пустое место, либо на код клавиши по своему выбору.

Чтобы добиться одинакового поведения в разных средах (X / Wayland / неграфические TTY) и научиться делать такие вещи, важно делать это на уровне ядра (поэтому xmodmap/ xkbрешения мне не помогут).

Как бы я это сделал?

Также, будет ли достаточно модуля ядра или потребуется прямое изменение кода?

Спасибо за любые подсказки!

решение1

Ни модуль ядра, ни взлом ядра не требуются.

Используя , setkeycodesвы можете изменить отображение скан-кода в код клавиши работающего ядра, для чего, конечно, потребуются права root.

Чтобы сопоставить Caps Lock (скан-код 0x3a) с клавишей с буквой x (код клавиши 45), можно setkeycodes 3a 45привести следующий пример.

Используя showkey -sи showkeyвы сможете найти нужный скан-код и код ключа.

Обязательно вводите данные команды с консоли, а не с терминала.

Связанный контент