включение липких клавиш в xorg (потрясающий менеджер рабочего стола)


12

Я хотел бы включить "липкие клавиши-модификаторы" в archlinux + awesome, и я не нашел правильную информацию.


Что такое "липкие ключи"?
Даниэль Андерссон

правильно, я имел в виду «липкие клавиши-модификаторы», это означает, что нажатие клавиши-модификатора действует как тумблер, и обычно тумблер отпускается при следующем нажатии клавиши, поэтому не нужно одновременно нажимать клавиши, но их можно нажимать последовательно. Эта функция доступна для пользователей с ограниченными возможностями в OS-X, Gnome и, вероятно, Windows, и я считаю ее более удобной и менее напряженной при включенной функции.
Макарио

Ответы:


21

Я понял. Существует утилита под названием xbkeys для настройки параметров доступа для xorg.

Из руководства xkbset ($ xkbset man):

To switch sticky keys on or off, and optionally set or reset:
() two keys pressed at the same time stops sticky keys;
() a modifier pressed twice will be locked:

    [-]{sticky|st} [[-]twokey|[-]latchlock]...

Я запустил это:

$ xkbset sticky -twokey -latchlock

Эта команда может идти в .xinitrc

# turn on stickykeys. don't let two keys pressed at the same time disable it.
# don't turn on "latch lock", ie pressing a modifier key twice "locks" it on.
xkbset accessx sticky -twokey -latchlock

# don't expire these settings. (run xkbset q exp for details.)
xkbset exp 1 =accessx =sticky =twokey =latchlock

 


Вот ссылка на xkbset: math.missouri.edu/~stephen/software/#xkbset

Это доступно в Debian в пакете xkbset.
Джесси Халлетт

3
Этот ответ очень полезен! Теперь я просто хочу найти способ ограничить липкое поведение клавишами Shift.
Джесси Халлетт

1
@JayeshBhoot Да; У xkb есть варианты «защелки» некоторых клавиш. Я получаю липкое смещение, сопоставляя свои клавиши Shift, ISO_Level2_Latchкоторые действуют как смещение для целей модификатора. (Некоторые программы, которые ищут код клавиши Shift, в частности, не работают ISO_Level2, особенно игры.) У меня есть мой конфиг онлайн; но вам нужно будет найти некоторую документацию по конкретным деталям применения пользовательских сопоставлений клавиш. github.com/hallettj/dot-xmonad/blob/master/home/.config/X11/xkb/…
Джесси Халлетт

1
@JesseHallett спасибо за указатель! Я попробую это как можно скорее.
Jayesh Bhoot

5

Вы можете использовать Xmodmap для установки блокировки клавиш для клавиш Scroll, Kana, Num, Caps и Shift. Также некоторые ключи группирования ISO могут быть переназначены таким образом. Например, на моей клавиатуре, чтобы установить Left Shift как переключатель, используйте это:

xmodmap -e "keycode 50 = Shift_Lock"

используйте «xev», чтобы получить правильный код ключа.

Просто добавьте команду внутри кавычек в файл с именем .Xmodmap и перезапустите X, чтобы изменения были постоянными.

К сожалению, я не думаю, что есть код для блокировки клавиш Control, Alt или Meta. Если вы разместите более конкретный вопрос и добавите достойную награду, я смогу разработать сценарий оболочки и / или изменить xorg, чтобы сделать это возможным.


К сожалению, у меня нет больше пунктов, чтобы предложить, я действительно скучаю по липким модификаторам, как в cntrl, window, alt, meta ...
Макарио

XKB - лучший способ сделать это. Проверьте Arch wiki
Фил Пирожков

1

Один из способов активировать липкие клавиши - нажать StickyKeys_Enableклавишу. Если у вас нет привязки к клавиатуре, вы можете имитировать нажатие клавиш, например, с помощью Xdotool:

> xdotool key StickyKeys_Enable

-1

Насколько я знаю, Xorg не поддерживает это. Это не исключено, если пользовательский драйвер клавиатуры реализует это, но я никогда не сталкивался с таким.


Ммм ... Я бы очень хотел иметь это, не прибегая к Gnome или XFCE ... Облом!
Макарио
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.