Где в источниках ядра Linux я могу найти список другой клавиатуры scancodes?

К сожалению, Warren не отправил как ответ, но как комментарий; я не могу подчеркнуть достаточно, что он полностью корректен.

Удаление/изменение одного файла не решит Вашу Настоящую проблему; это заставит ОДИН признак уйти. Выведите поле из эксплуатации, возьмите изображение для более поздней судебной экспертизы и переустановите с более новой версией (надо надеяться, w/новые исправления безопасности) того, что Вы выполняли.

Я повторяюсь: удалением файла НЕ является FIX.

5
28.11.2013, 16:00
1 ответ

Коды клавиши находятся в [src]/drivers/tty/vt/defkeymap.map:

# Default kernel keymap. This uses 7 modifier combinations.
[...]

См. также мой ответ здесь для способов просмотреть (dumpkeys) и измените (loadkeys) текущая контурная карта, поскольку это существует в рабочем ядре.

Однако это является немного высокоуровневым, чем scancodes, отправленный устройством. Это могло бы быть тем, что находится в таблице наверху [src]/drivers/hid/hid-input.c, однако, так как они происходят из устройства, Вам не нужен источник ядра Linux для обнаружения, каковы они; они - то же независимо от ОС.

"HID" == устройство интерфейса пользователя. usbhid подкаталог drivers/hid кажется, не содержит специальных кодов, так как клавиатуры USB являются действительно обычными клавиатурами.

Одно различие между кодами клавиши и scancodes - то, что scancodes более детализированы - уведомление, там другой сигнал для нажатия и выпуска. Код клавиши соответствует ключу, на который это снижается, я верю; таким образом, ядро отображает scancode события на состояние кода клавиши.

6
27.01.2020, 20:38
  • 1
    отражения Хорошо, который, кажется, то, что я искал, спасибо. Но я все еще пропускаю фактический scancode, вероятно, я просто перепутываю вещи. Я узнал здесь это, когда я нажимаю ENTER на своей клавиатуре USB, scancode 1C отправляется в ядро. Но я, кажется, не нахожу 1C в /drivers/tty/vt/defkeymap.map. Есть ли другой слой между ними? –  defoe 28.11.2013, 17:02
  • 2
    , я перепутал коды клавиши, и scancodes - отредактировали это в. Десятичное число 28 является шестнадцатеричным 1C. –  goldilocks 28.11.2013, 17:23
  • 3
    ... замечает 1C IBM PC XT "Возврат, нажатый" из той ссылки Википедии. –  goldilocks 28.11.2013, 17:27

Теги

Похожие вопросы