Рейтинг:2

Как изменить скорость прокрутки с помощью xinput, когда нет реквизита «расстояние прокрутки»?

флаг tn

Большинство других ответы на этом тип вопроса указать на использование xinput чтобы установить «расстояние прокрутки» или «дельту прокрутки» от «evdev».

Но у моего устройства нулевые свойства evdev или Scroll Distance. Все, что у меня есть, это libinput, и ни один из них не кажется правильным по меткам.

В: как ускорить колесо прокрутки мыши на этом устройстве:

$ xinput list-props 'Logitech Trackball'
Устройство Logitech Trackball:
    Устройство включено (203): 1
    Матрица преобразования координат (205): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Включена естественная прокрутка (337): 0
    libinput Естественная прокрутка включена По умолчанию (338): 0
    Доступные методы прокрутки libinput (339): 0, 0, 1
    Включен метод прокрутки libinput (340): 0, 0, 0
    Метод прокрутки libinput включен По умолчанию (341): 0, 0, 0
    Кнопка прокрутки libinput (342): 2
    Кнопка libinput Кнопка прокрутки По умолчанию (343): 2
    Эмуляция середины libinput включена (344): 0
    Эмуляция середины libinput включена По умолчанию (345): 0
    Угол поворота libinput (346): 0,000000
    libinput Угол поворота По умолчанию (347): 0,000000
    libinput Скорость ускорения (348): 0,264706
    libinput Скорость ускорения по умолчанию (349): 0,000000
    Доступные профили ускорения libinput (350): 1, 1
    libinput Accel Profile Enabled (351): 1, 0
    libinput Accel Profile Enabled По умолчанию (352): 1, 0
    libinput Левая рука включена (353): 0
    libinput Left Handed Enabled По умолчанию (354): 0
    Доступные режимы отправки событий libinput (322): 1, 0
    libinput Режим отправки событий включен (323): 0, 0
    libinput Режим отправки событий включен По умолчанию (324): 0, 0
    Узел устройства (325): "/dev/input/event8"
    Идентификатор продукта устройства (326): 1133, 50180
    libinput Кнопки блокировки перетаскивания (355): <нет элементов>
    libinput Горизонтальная прокрутка включена (356): 1

на Убунту 20.04.3 ЛТС и xserver-xorg-core-2:1.20.11-1ubuntu1~20.04.2 с хинпут версии 1.6.3, XI версия на сервере: 2.3

Рейтинг:2
флаг tn

Сейчас это невозможно, потому что libinput еще не имеет паритета функций с evdev (ну, правильный ответ на самом деле «установить archlinux :)», поскольку у них уже есть пакет с патчем, но я попытаюсь написать обходной путь для Ubuntu здесь)

Плавающий патч, но еще не слитый. https://wiki.archlinux.org/title/Libinput#Mouse_wheel_scrolling_speed_scaling

Обходной путь — вручную применить более простую версию исправления: инструкции:

  1. Клон https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput.git
  2. установить базовые пакеты разработчика для компиляции этого кода sudo apt установить xserver-xorg-dev libinput-dev
  3. Следуйте остальным инструкциям на https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/merge_requests/12#note_636816 (обратите внимание, что изменение ускорит прокрутку в 3 раза. просто измените число на то, что вы хотите. Если вы не знаете о ldconfig и т. д., просто перезагрузите компьютер после судо сделать установить)
    • читайте комментарии. есть некоторые предостережения, такие как влияние на игровой ввод.
    • если вы согласны с предостережениями, вот упрощенные шаги из этого
    1. дпкг -л | grep xserver-xorg-input-libinput
    2. обратите внимание на версию и игнорируйте -1 суффикс, так как это версия переупаковки Ubuntu. Я не уверен, что вы потеряете, если это число больше 1, возможно, отсутствуют обновления безопасности, поэтому действуйте осторожно.
    3. проверьте ветку git с вашей версией сверху. мой пример был git checkout xf86-input-libinput-0.29.0 потому что моя версия была 0.29.0-1
    4. либо примените патч из комментария, либо отредактируйте файл напрямую (это изменение одной строки). vim src/xf86libinput.c в конце метода вычислить_ось_значения (... Добавлять значение *= 3; до того, как эта переменная будет использована в последний раз, чтобы умножить ее на три, прежде чем будет возвращено значение.
    5. установить зависимости сборки для пакета sudo apt-get build-dep libinput
    6. построить код
      1. автореконф -vif
      2. ./configure --prefix=/usr
      3. делать
    7. установить новые файлы судо сделать установить
    8. перезагрузка. ваша прокрутка мыши должна меня в 3 раза быстрее. Если вы хотите настроить скорость, повторите описанные выше шаги, начиная с того места, где вы редактировали файл.

Ответить или комментировать

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