Кнопка мыши для прокрутки

У меня есть трекбол с некоторыми дополнительными кнопками, которые я хотел бы использовать для автоматического прокрутки (снятие напряжения с повторяющегося движения прокручивающего пальца). Я знаю номера кнопок xev, которые я хочу использовать, и как сопоставить дополнительные кнопки кнопкам прокрутки. До сих пор я знаю:

xinput --set-button-map 9 1 2 3 4 5 6 7 8 9 4 5 12

(9 - идентификатор указателя трекбола). Это правильно приводит к тому, что выбранные дополнительные кнопки прокручиваются вверх и вниз ... по одной строке за раз. Таким образом, на самом деле никакой отличий от поведения колесика прокрутки, в значительной степени ожидаемого.

Что бы я хотел, это иметь непрерывную прокрутку, когда удерживаются кнопки 10 и 11. Аналогично колесу наклона. xev показывает, что колесико наклона фактически регистрируется как повторяющиеся события нажатия и отпуска для кнопок 6 и 7.

Итак, мой вопрос: какой был бы самый простой способ настроить это? Кнопка 10 удерживается в эмуляции повторного нажатия и отпускания кнопки 4, кнопка 11 делает то же самое для эмуляции кнопки 5. Возможно, с настраиваемой задержкой повторения и частотой повторения?

ETA: Одно простое решение - это просто отобразить кнопки 6 и 7 на 5 и 4 соответственно. Но это меньше идеала, так как я теряю горизонтальную прокрутку.

Я также обнаружил, что Chrome игнорирует команду xinput в целом! Исправьте меня, если я ошибаюсь, но для использования xinput2 вместо xinput1 вы должны использовать драйвер evdev вместо драйвера по умолчанию libinput в Xorg. Мне удалось это сделать, добавив файл конфигурации с помощью:

Section "InputClass" Identifier "Evdev Mouse" MatchProduct "HUGE" Driver "evdev" Option "ButtonMapping" "1 2 3 4 5 5 4 8 9 4 5 12" EndSection

(измените строку MatchProduct по своему вкусу)

Теперь он работает и в Chrome. Но исходный вопрос остается: как отображать кнопки 10 и 11 для повторных пресс-релизов 4 и 5?

0
задан 9 January 2018 в 03:32

2 ответа

Вдохновленный этой записью, я использую

scroll.sh

#!/bin/bash while true do xte "key $1" sleep 0.1 done

и ~ / .xbindkeysrc

"~/scroll.sh Down" b:8 "killall scroll.sh" b:8 + Release "~/scroll.sh Up" b:9 "killall scroll.sh" b:9 + Release

Вероятно, вы должны заменить кнопки propper b: 10 и b: 11 вместо моего.

затем запустите

killall xbindkeys xbindkeys
0
ответ дан 17 July 2018 в 23:34

Вдохновленный этой записью, я использую

scroll.sh

#!/bin/bash while true do xte "key $1" sleep 0.1 done

и ~ / .xbindkeysrc

"~/scroll.sh Down" b:8 "killall scroll.sh" b:8 + Release "~/scroll.sh Up" b:9 "killall scroll.sh" b:9 + Release

Вероятно, вы должны заменить кнопки propper b: 10 и b: 11 вместо моего.

затем запустите

killall xbindkeys xbindkeys
0
ответ дан 24 July 2018 в 17:03

Другие вопросы по тегам:

Похожие вопросы: