Как добиться такого эффекта пролистывания мышкой как в браузерах на Windows?

Автор tigran5233, 11 октября 2023, 23:25:33

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

tigran5233

Есть ли какие-то команды, может быть скрипты-"костыли", которые бы клике на колёсико мыши активировали бы пролистывание в зависимости наверх или вниз ведётся курсор?

Подробности смотрите в gif-анимации, специально записанной для этой темы форума:

ogost

Второй ответ сверху
Продублирую:
ЦитироватьThis will work with all your applications without the need of installing anything.

Get your input deviceID. In my case was 11.
xinput list
If you want, list available properties with xinput list-props <deviceID>. If you are using libinput (the future/present), almost all properties will start with libinput. For evdev check my answer here.

With libinput
Set mouse properties
xinput set-prop 11 "libinput Scroll Method Enabled" 0, 0, 1  # This is button
xinput set-prop 11 "libinput Button Scrolling Button" 2      # This is middle mouse. Already 2 by default
Description from man libinput:

  • libinput Scroll Method Enabled 3 boolean values (8 bit, 0 or 1), in order "two-finger", "edge", "button". Indicates which scroll method is currently enabled n this device.
  • libinput Button Scrolling Button 1 32-bit value. Sets the button number to use for button scrolling. This setting is independent of the scroll method, to nable button scrolling the method must be set to button-scrolling and a valid button must be set.

You can add this to a shell script and run it at login.
Like mouse wheel, with the same movement while pressing Ctrl will zoom in/out page. Ctrl + 0 to reset.
This work with X and probably with Wayland.
Сам не пробовал, мопед не мой.

ek-nfn

если только для браузера, то существуют браузерные расширения, аналогичные вашей гифке. Есть расширения и с другими вариантами прокрутки. Есть расширения с жестами для мышей с возможностью полистного пролистывания вниз или вверх (имхо, самый удобный вариант)
Debian 12  -> Devuan 5 xfce -> MX Linux 23

Modigar

Firefox - в настройках поставить галочки на
"Использовать автоматическую прокрутку"
"Использовать плавную прокрутку"

Cromium - установить расширение AutoScroll

ogost

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

tigran5233

Цитата: Modigar от 12 октября 2023, 14:17:53Firefox - в настройках поставить галочки на
"Использовать автоматическую прокрутку"
"Использовать плавную прокрутку"

Cromium - установить расширение AutoScroll

В Файрфоксе заработало, спасибо!
А в Opere, которая на базе Хромиума, если честно пробовал разные расширения с именами по типу, что Вы назвали, может я неправильно пользуюсь, но не работает как на Windows средняя клавиша мыши.

А в Firefox, повторюсь, идеально подошла Ваша настройка.

14 октября 2023, 01:36:33
Цитата: ogost от 12 октября 2023, 06:29:01Второй ответ сверху
Продублирую:
ЦитироватьThis will work with all your applications without the need of installing anything.

Get your input deviceID. In my case was 11.
xinput list
If you want, list available properties with xinput list-props <deviceID>. If you are using libinput (the future/present), almost all properties will start with libinput. For evdev check my answer here.

With libinput
Set mouse properties
xinput set-prop 11 "libinput Scroll Method Enabled" 0, 0, 1  # This is button
xinput set-prop 11 "libinput Button Scrolling Button" 2      # This is middle mouse. Already 2 by default
Description from man libinput:

  • libinput Scroll Method Enabled 3 boolean values (8 bit, 0 or 1), in order "two-finger", "edge", "button". Indicates which scroll method is currently enabled n this device.
  • libinput Button Scrolling Button 1 32-bit value. Sets the button number to use for button scrolling. This setting is independent of the scroll method, to nable button scrolling the method must be set to button-scrolling and a valid button must be set.

You can add this to a shell script and run it at login.
Like mouse wheel, with the same movement while pressing Ctrl will zoom in/out page. Ctrl + 0 to reset.
This work with X and probably with Wayland.
Сам не пробовал, мопед не мой.

Спасибо за готовность помочь!
Если я всё правильно сделал (а если не правильно, пусть люди меня поправят), то я в начале установил пакет для корректного исполнения команды:
sudo apt install libinput-tools
Затем выполнил первую команду, чтобы выяснить идентификатор мыши:
xinput listОн мне выдал такое:
Virtual core pointer                        id=2    [master pointer  (3)]
⎜  ↳ Virtual core XTEST pointer                  id=4    [slave  pointer  (2)]
⎜  ↳ Logitech USB Optical Mouse                  id=12    [slave  pointer  (2)]
⎜  ↳ SynPS/2 Synaptics TouchPad                  id=14    [slave  pointer  (2)]
# и т.д.

Если я правильно понял ответ терминала, то id моей мыши 12. Значит во второй и третьей команде я должен 11 поменять на 12. Что я и сделал:
xinput set-prop 12 "libinput Scroll Method Enabled" 0, 0, 1  # This is button
xinput set-prop 12 "libinput Button Scrolling Button" 2      # This is middle mouse. Already 2 by default

После этого разницу в Хромиум-браузере Опера не почувствовал в плане управления скроллингом кликом по колёсику мыши. Возможно я что-то неправильно сделал, повторюсь.
Но на всякий случай обе эти команды прописал в одной строке в автозагрузке:
Whisker menu -> Диспетчер настроек -> Сеансы и запуск -> Автозапуск приложений -> Добавить
Имя: Настройка клика по колёсику мыши
Команда: xinput set-prop 12 "libinput Scroll Method Enabled" 0, 0, 1 & xinput set-prop 12 "libinput Button Scrolling Button" 2Запуск: при входе в систему.

Возможно, при перезагрузке даст эффект, но сомневаюсь, поскольку если его надо прописывать в автозапуске, судя по тому ответу, что Вы процитировали, значит он до перезагрузки и работает, а значит он уже должен был, по идее работать. Возможно, я где-то, повторюсь, "намудрил".
Но, в любом случае, Вам спасибо за готовность помочь!