Можно ли добавить дополнительные модификаторы?

Я использую минималистичный WM, управляемый клавиатурой.
Главный вопрос: возможно ли это? Как?
Например, Mod6 . Я знаю, как переназначить существующие модификаторы, но не как добавить новые. Я использую Arch Linux.

2 Solutions collect form web for “Можно ли добавить дополнительные модификаторы?”

X обычно имеет 8 модификаторов, которые имеют назначенные им ключи. При нажатии клавиши происходит событие клавиатуры, связанное с клавишей. Если у keysym есть назначенный ему модификатор, тогда, пока этот ключ не работает, ключевые события будут помечены этим модификатором.

Модификаторы вместе с обычными назначаемыми ключами:

  • Shift : Shift_L , Shift_R
  • Lock : Caps_Lock
  • Control : Control_L , Control_R
  • Mod1 : Num_Lock
  • Mod2 : Meta_L , Meta_R
  • Mod3 : Alt_L , Alt_R
  • Mod4 : Hyper_L , Hyper_R
  • Mod5 : Super_L , Super_R

Распределение Alt / Hyper / Meta / Super / NumLock среди Mod1-5 произвольно; вы можете найти их в другом порядке, и вы можете обнаружить, что некоторые из них отсутствуют.

8 – это все, что вы получаете со стандартной библиотекой X, и некоторые приложения даже не позволяют вам получить от них все. Два из них ( Shift и Lock ) имеют фиксированное значение, что вы вряд ли сможете переопределить без неприятных побочных эффектов при наборе символов.

Однако большая часть обработки событий клавиатуры обрабатывается на стороне клиента (т.е. внутри каждого приложения). Таким образом, возможно, что конкретное приложение позволит вам обрабатывать больше модификаторов. Способ сделать это будет специфичным для этого приложения (или, по крайней мере, для библиотеки или структуры, используемой для обработки событий).

Обычно Mod1-Mod5 сочетаются с названными модификаторами, такими как Shift, Control, Alt, Hyper, Super.

В некоторых WM-устройствах можно отделить их и использовать в качестве десяти различных модификаторов. Не все WM сотрудничают с этим, но некоторые делают.

Важный бит находится в вашем .xmodmaprc чтобы очистить различные ассоциации, используя такие вещи, как clear Mod и clear Shift , но НЕ повторно объединить их, используя обычные add Mod2 = Alt_L .

  • Отключение расширения сервера Xorg во время выполнения (для новых клиентов)?
  • Отладка «Максимальное количество клиентов, достигших ... неспособных открыть дисплей»: 0 «'
  • Escape on Control, управление клавишей Capslock, клавиша Capslock on Escape
  • Автозапуск Firefox в системе CentOS 6 с помощью диспетчера отображения Gnome + Openmotif Window Manager
  • Получение лучшего разрешения с использованием X на OpenBSD с VMWare Fusion
  • отправить нажатие клавиши для обработки
  • Как настроить двухсторонний дисплей в портретном режиме? (Арка)
  • Установка частоты повторения клавиатуры USB автоматически
  • Fn + F2 НЕ МОЖЕТ
  • Загрузка в TTY без графики?
  • Как я разрезаю интернет, но подключаю X-сервер для программы systemd-nspawned
  • Interesting Posts

    X11 коснитесь значения дрожь. Там в любом случае?

    Визуально отображать раскладки клавиатуры X.org? / Также: откуда взялись раскладки клавиатуры X.org?

    Как я могу использовать netcat (nc) для модели клиентского сервера чата?

    Где искать сообщения об ошибках после перезагрузки и перезагрузки в Linux?

    Расширение истории рыб

    Двойная загрузка Fedora и Windows 8 дает ошибку: вам нужно сначала загрузить ядро

    Как остановить пробуждение всех подключенных дисков при перезагрузке / дезактивации свопа?

    Добавление связанного имени пользователя в журнал регистрации syslog

    Как открыть новое окно, используя только один ярлык на экране gnu?

    Создание неформатированного раздела с нераспределенного дискового пространства

    Настройте среду для кросс-компиляции на i386, armel, armhf, arm64 и mips без конфликтов libglib2

    как установить этот диск?

    Что делает эта команда Linux?

    Как изменить текстовый редактор по умолчанию в рейнджере?

    пользователь без полномочий root, способный получать доступ к сетевым командам, используя команды?

    Linux и Unix - лучшая ОС в мире.