Веселье Xmodmap
Когда вы нажимаете клавиши на клавиатуре, есть несколько мест, которые определяют, что происходит. Сама клавиатура, ядро, X или другой диспетчер отображения. Для вашей цели мы можем научить X обращаться с Супер ключом по-разному.
Супер ключ обычно отображается в Mod4. Поэтому, когда вы нажимаете Mod4 + Tab, вы можете ожидать, что сможете переключаться между различными окнами. Не всегда, но приложения часто игнорируют этот модификатор или не получают его.
Вариант, который у вас есть, состоит в том, чтобы настроить способ обработки супер ключа. Если вы сделаете это, вы, скорее всего, захотите поменять функциональность другим ключом. Это сделано для того, чтобы вы могли продолжать делать такие вещи, как предыдущий пример Mod4 + Tab или другие распространенные комбинации.
Если вы хотите увидеть, как X работает с вашими текущими модификаторами, вы можете распечатать их, используя xmodmap
:
$ xmodmap
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
Здесь мы видим, что все супер-ключи и гипер-ключи отображаются в Mod4. Если на вашей клавиатуре есть левая и правая супер-клавиши, вы можете даже выполнить настройку только на одну или другую. Например, вы можете убрать Super Left из Mod4, оставив Super Right как обычную кнопку Super.
Вы должны уделить некоторое время тому, чтобы узнать, как другие использовали клавиши-модификаторы на протяжении многих лет, чтобы ознакомиться с этой идеей и узнать, как люди научились использовать все преимущества. Идея в том, что вы очищаете модификатор, а затем добавляете его обратно. Вы можете настроить что-то, например, ~/.xmodmaprc
и затем запустить xmodmap ~/.xmodmaprc
.
# .xmodmaprc
clear mod4
clear control
add mod4 = Super_R
add control = Super_L
add control = Control_L
add control = Control_R
Почему бы просто не использовать клавишу Control для начала? Весьма вероятно, что у вас есть управляющая клавиша рядом с вашей суперключем, так что вам придется найти применение для другого модификатора, такого как Mod3, и использовать его. Другие используют Mod2 или Mod5 довольно умными способами, чтобы увеличить количество доступных модификаторов.
Как только вы получите все, что хотите, вы можете активировать эти настройки при помощи X и вашего пользователя при каждом входе в систему, добавив xmodmap
строку в ваш ~/.xinitrc
файл:
xmodmap ~/.xmodmaprc
После того, как вы переопределили свою клавишу Super_L, чтобы она не была частью Mod4, но была частью другой группы модификаторов, глобальные сочетания клавиш должны использовать ваши комбинации клавиш.
Проблемы, которые могут быть связаны
Хотя на самом деле это ошибка Gnome (?), Может ли эта проблема или что-то подобное происходить с вами? Скорее всего, вам понадобится обходной путь для настройки плазмы под названием «Как я могу предотвратить запуск Meta Plasma?»:
Как здесь подразумевается , отредактируйте ~/.config/kwinrc
, добавив следующие строки внизу.
[ModifierOnlyShortcuts]
Meta=
Затем перезапустите Kwin с помощью kwin_x11 --replace & disown
.