-1

Я только что обновил свой arch linux до gnome shell 3.18, затем перезапустил и мой "m" пропал, он ничего не делает, когда я нажимаю на него. Я пытался использовать его и работает, когда я ищу приложение или я набираю в командной строке Alt+F2, но я не могу использовать его в консоли, браузере или любом другом месте. Вот вывод xev для клавиши m>

Событие FocusOut, серийный номер 36, синтетический номер NO, окно 0x2800001,
режим NotifyGrab, подробно NotifyAncestor

Событие FocusIn, серийный номер 36, синтетический номер NO, окно 0x2800001,
режим NotifyUngrab, подробно NotifyAncestor

Событие KeymapNotify, серийный номер 36, синтетический номер NO, окно 0x0,
клавиши: 2 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Событие KeyRelease, серийный номер 36, синтетический номер NO, окно 0x2800001,
корень 0xd4, subw 0x0, время 635522, (301, -434), корень: (808,373),
состояние 0x10, код ключа 58 (keysym 0x6d, m), тот же экран YES,
XLookupString дает 1 байт: (6d) "m"
XFilterEvent возвращает: False

и здесь для любого другого ключа. Надо сказать, что (shift + m) работает нормально.

Событие KeyPress, серийный номер 36, синтетический номер NO, окно 0x2800001,
корень 0xd4, subw 0x0, время 724970, (425,97), корень: (932,904),
состояние 0x10, код ключа 57 (keysym 0x6e, n), тот же экран YES,
XLookupString дает 1 байт: (6e) "n"
XmbLookupString дает 1 байт: (6e) "n"
XFilterEvent возвращает: False

Событие KeyRelease, серийный номер 36, синтетический номер NO, окно 0x2800001,
корень 0xd4, subw 0x0, время 725051, (425,97), корень: (932,904),
состояние 0x10, код ключа 57 (keysym 0x6e, n), тот же экран YES,
XLookupString дает 1 байт: (6e) "n"
XFilterEvent возвращает: False

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

Вывод статуса localectl:

Язык системы: LANG = es_ES.UTF-8
VC Keymap: es
X11 макет: эс, мы
X11 вариант:,

PD: я могу написать m, установив caps lock и используя shift+m, но это не так просто.

1 ответ1

1

Ваша клавиатура работает нормально, но ваша клавиша m взломана какой-то другой программой. Это показано в первых двух строфах вашего вывода: видите ли вы строки Modify {Grab | Ungrab}? Они указывают, что вывод ключа захватывается другой программой.

Что это за программа на самом деле, никто не догадывается. Последние версии X11 имеют возможность исследовать это, но это обычно отключается в установках vanilla X11. В Linux вам нужно будет установить пакет xdotools чтобы получить возможность использовать эти функции.

Вы активируете это с помощью команды

 xdotools key $KEY

где $KEY является одним из:

  • XF86LogGrabInfo: печатает список текущих захватов в /var/log/Xorg.0.log

  • XF86Ungrab: удаляет текущие захваты, но не уничтожает процессы, которые выполняли захват

  • XF86ClearGrab: убивает процессы, которые захватили ваши ключи.

Это обсуждается в очень полезной Arch Linux Wiki и ссылках в ней, и, в частности, они предлагают небольшую симпатичную уловку, чтобы увидеть, кто passively захватывает ваш ключ. Он состоит (адаптирован к вашему случаю) из одной строки:

xdotool keydown "m"; xdotool key "XF86LogGrabInfo"; xdotool keyup "m"; tail /var/log/Xorg.0.log

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .