1

Мне бы хотелось, чтобы с помощью ЛЮБОГО устройства мыши можно было удерживать среднюю клавишу (или реальное колесо) и двигаться вперед и назад или слева направо, чтобы имитировать поведение колеса.

Я нашел способ сделать это сейчас:

MouseID=`xinput list " USB OPTICAL MOUSE" 2>/dev/null|grep id=|sed -e "s/.*id=\([0-9]*\).*/\1/"`
xinput set-int-prop $MouseID "Evdev Wheel Emulation" 8 1 2>/dev/null
xinput set-int-prop $MouseID "Evdev Wheel Emulation Button" 8 2 2>/dev/null
xinput set-int-prop $MouseID "Evdev Wheel Emulation Axes" 8 6 7 4 5 2>/dev/null

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

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

Большое спасибо.

1 ответ1

1

Благодаря помощи на форуме Archlinux я нашел способ архивировать это:

Отредактируйте /etc/X11/xorg.conf.d/10-evdev.conf и измените первый раздел на:

Section "InputClass"
        Identifier "evdev pointer catchall"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
        Option      "EmulateWheel"      "true"
        Option      "EmulateWheelButton"    "2"
        Option      "XAxisMapping"      "6 7"
        Option      "YAxisMapping"      "4 5"
EndSection

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .