![Можно ли изменить коды клавиш на клавиатуре?](https://rvso.com/image/1557234/%D0%9C%D0%BE%D0%B6%D0%BD%D0%BE%20%D0%BB%D0%B8%20%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B8%D1%82%D1%8C%20%D0%BA%D0%BE%D0%B4%D1%8B%20%D0%BA%D0%BB%D0%B0%D0%B2%D0%B8%D1%88%20%D0%BD%D0%B0%20%D0%BA%D0%BB%D0%B0%D0%B2%D0%B8%D0%B0%D1%82%D1%83%D1%80%D0%B5%3F.png)
У меня ноутбук Lenovo с нестандартной раскладкой клавиатуры, в которой рядом с правым Shift есть клавиша слеш/вопрос (/?), которая по умолчанию в br-abnt2 сопоставлена с апострофом/кавычками ('"). Также есть стандартная клавиша апостроф/кавычки рядом с 1. Вчера я изменил свой файл br-abnt.map и файлы макета xorg, чтобы исправить клавишу /?. Потом я понял, что '" теперь сопоставлена с /?.
Сегодня я проверил эти две клавиши, xev
и у них одинаковый код клавиши, поэтому я не могу исправить одну, не испортив другую.
Можно ли изменить коды клавиш на этих клавишах, чтобы их можно было настраивать отдельно? Как это исправить?
EDIT: вот evtest
вывод для нажатия сначала '", а затем /?:
Properties: Testing ... (interrupt to exit) Event: time 1525650895.009067, type 4 (EV_MSC), code 4 (MSC_SCAN), value 1c Event: time 1525650895.009067, type 1 (EV_KEY), code 28 (KEY_ENTER), value 0 Event: time 1525650895.009067, -------------- SYN_REPORT ------------ Event: time 1525650897.410587, type 4 (EV_MSC), code 4 (MSC_SCAN), value 29 Event: time 1525650897.410587, type 1 (EV_KEY), code 41 (KEY_GRAVE), value 1 Event: time 1525650897.410587, -------------- SYN_REPORT ------------ 'Event: time 1525650897.466550, type 4 (EV_MSC), code 4 (MSC_SCAN), value 29 Event: time 1525650897.466550, type 1 (EV_KEY), code 41 (KEY_GRAVE), value 0 Event: time 1525650897.466550, -------------- SYN_REPORT ------------ Event: time 1525650908.301683, type 4 (EV_MSC), code 4 (MSC_SCAN), value 29 Event: time 1525650908.301683, type 1 (EV_KEY), code 41 (KEY_GRAVE), value 1 Event: time 1525650908.301683, -------------- SYN_REPORT ------------ 'Event: time 1525650908.411541, type 4 (EV_MSC), code 4 (MSC_SCAN), value 29 Event: time 1525650908.411541, type 1 (EV_KEY), code 41 (KEY_GRAVE), value 0 Event: time 1525650908.411541, -------------- SYN_REPORT ------------
(первый SYN_REPORT появляется до того, как я ввожу что-либо)
решение1
Используйте evtest
, чтобы узнать, как их видит ядро. Если у них разные сканкоды, уровень ввода ядра может сопоставить их с разными кодами клавиш, например, используяudev hwdb.