Вопрос или проблема
Я долгое время использовал KDE.
Всегда при переключении между окнами с помощью Alt+Tab выбиралось окно, когда я отпускал обе кнопки.
Текущее поведение, которое у меня есть с KUbuntu 20.04 и Plasma 5.18.5, состоит в ожидании, пока я не нажму Enter, прежде чем наконец переключиться на выбранное окно.
Я проверил все настройки переключателя задач и не нашел, как вернуть его к выбору просто при отпускании обеих клавиш Alt и Tab.
Alt+Tab все еще работает как ожидалось при переключении между 2 окнами. Для нескольких окон ожидается нажатие Enter, что раздражает.
Надеюсь на совет по скорейшему исправлению этого.
Ответ заключается в настройках Xkb. Я обычно настраиваю с собственными опциями, чтобы мои комбинации клавиш для Emacs работали как ожидалось, и некоторые клавиши, такие как Caps Lock, были сопоставлены с полезными функциями.
Как-то после изменений клавиши Meta и Alt оказались с тем же кодом клавиши, несмотря на то, что имеют разные модификаторы при выводе Xmodmap
. Это было основной причиной путаницы, потому что эта же конфигурация работает на другой машине с KDE. Чтобы проверить наличие общих кодов клавиш, выполните:
xmodmap -pk | grep Alt
64 0xffe9 (Alt_L) 0xffe9 (Alt_L) 0xffe9 (Alt_L) 0xffe9 (Alt_L)
204 0x0000 (NoSymbol) 0xffe9 (Alt_L) 0x0000 (NoSymbol) 0xffe9 (Alt_L)
Вы увидите, если Alt имеет общие коды с Meta или другим модификатором. Затем вы можете работать над тем, чтобы исправить вашу конфигурацию Xkb для разрешения этого конфликта. В моем случае, несмотря на то что я применил свою конфигурацию в последнюю очередь, некоторые предыдущие шаги как-то добавили клавишу Meta. Вы можете проверить, какие опции применены, выполнив:
setxkbmap -print -verbose 10
Setting verbose level to 10
locale is C
Trying to load rules file ./rules/evdev...
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules: evdev
model: pc101
layout: us,ru
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete
symbols: pc+us+ru:2+inet(evdev)
geometry: pc(pc101)
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+ru:2+inet(evdev)" };
xkb_geometry { include "pc(pc101)" };
};
Чтобы проверить ваши опции, выполните:
setxkbmap -option -option your-mods
Понимание конфигураций Xkb не является простым делом. Попробуйте использовать уже доступные наборы опций через системные настройки в KDE или применяя их самостоятельно после проверки в /usr/share/X11/xkb/symbols
. Ищите altwin
, compose
, group
, чтобы проверить, что они делают и как.
Названия правил, которые нужно применить, можно найти в:
/usr/share/X11/xkb/rules/evdev.lst
попробуйте
add-apt-repository ppa:nrbrtx/xorg-hotkeys
apt update
apt-get dist-upgrade
Ответ или решение
Теория (Theory)
Проблема, описанная вами, связана с поведением переключателя задач в KDE, который требует нажатия Enter для подтверждения выбора окна при переключении между несколькими окнами. Обычно, ожидается, что при отпускании клавиш Alt+Tab выбранное окно должно становиться активным. Это может быть связано с изменениями в конфигурации Xkb, которые повлияли на поведение клавиш-модификаторов, таких как Alt и Meta.
Пример (Example)
На вашей системе KUbuntu 20.04 с Plasma 5.18.5 Alt+Tab, вероятно, работает корректно при переключении между двумя окнами, но при большем количестве окон требует дополнительного нажатия Enter. Проблема может заключаться в том, что клавиши Alt и Meta имеют одинаковый код клавиши, даже если их модификаторы отличаются, что проверяется с помощью команды xmodmap -pk | grep Alt
.
Применение (Application)
-
Проверка конфликта кодов клавиш:
Выполните командуxmodmap -pk | grep Alt
, чтобы увидеть, разделяют ли Alt и Meta или другие модификаторы один и тот же код клавиши. Если они это делают, необходимо исправить конфигурацию Xkb. -
Диагностика Xkb конфигурации:
Используйте командуsetxkbmap -print -verbose 10
, чтобы вывести детали текущих параметров Xkb. Это покажет, какие правила и макеты клавиатуры применяются. -
Коррекция конфигурации:
Если обнаружены несовпадения, используйте командуsetxkbmap -option -option your-mods
, чтобы протестировать изменения. Дополнительные варианты можно найти в/usr/share/X11/xkb/symbols
и/usr/share/X11/xkb/rules/evdev.lst
. -
Обновление программного обеспечения:
Возможное решение — обновление через PPA: выполните команды:sudo add-apt-repository ppa:nrbrtx/xorg-hotkeys sudo apt update sudo apt-get dist-upgrade
Это может устранить проблемы, связанные с разными конфигурациями клавиш.
Поддержание корректной настройки Xkb и обновлений системы позволит вам иметь ожидаемое поведение переключателя задач в KDE, обеспечивая плавную работу без необходимости нажатия дополнительных клавиш при переключении между окнами. Если проблема остаётся нерешённой, рассмотрите возможность использования форумов и ресурсов сообществ KDE для поиска специфических решений касательно вашей конфигурации.