Настройка чувствительности скроллинга мышью в Linux


Администрирование операционных систем на базе Linux (Debian/Ubuntu и Centos/RedHat) Настройка рабочих станций под управлением Ubuntu Linux
apt button evdev https linux profile курс
 
 

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


(последние правки 3 недели, 4 дня)

Сегодня прямо с утра, без объявления войны меня спросили как можно настроить чувствительность скроллинга мыши в Linux. Если для настройки скорости перемещения курсора имеются штатные инструменты настройки что в KDE, что в GNOME, то про чувствительность скроллинга пришлось информацию поискать и как выяснилось многими скрытыми параметрами устройств ввода можно управлять через xinput.

Первым делом, получаем список доступных в системе устройств ввода:

$ xinput list
⎡ Virtual core pointer                         id=2   [master pointer (3)]
⎜  ↳ Virtual core XTEST pointer               id=4   [slave pointer (2)]
⎜  ↳ Logitech USB Optical Mouse               id=9   [slave pointer (2)]
⎣ Virtual core keyboard                        id=3   [master keyboard (2)]
   ↳ Virtual core XTEST keyboard              id=5   [slave keyboard (3)]
   ↳ Power Button                             id=6   [slave keyboard (3)]
   ↳ Power Button                             id=7   [slave keyboard (3)]
   ↳ Logitech USB Keyboard                    id=10  [slave keyboard (3)]
   ↳ Logitech USB Keyboard                    id=11  [slave keyboard (3)]
   ↳ Eee PC WMI hotkeys                       id=12  [slave keyboard (3)]
   ↳ C-Media Electronics Inc.      Microsoft LifeChat LX-3000 id=8   [slave keyboard (3)]

Нас интересуем мышь и ее идентификатор девять (Logitech USB Optical Mouse id=9). Далее, мы можем запросить список всех доступных для нашего устройства ввода параметров (при помощи все той же команды xinput):

$ xinput list-props 9
Device 'Logitech USB Optical Mouse':
       Device Enabled (154):  1
       Coordinate Transformation Matrix (156): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
       Device Accel Profile (285):    0
       Device Accel Constant Deceleration (286):      1.000000
       Device Accel Adaptive Deceleration (287):      1.000000
       Device Accel Velocity Scaling (288):   10.000000
       Device Product ID (275):       1133, 49271
       Device Node (276):     "/dev/input/event3"
       Evdev Axis Inversion (289):    0, 0
       Evdev Axes Swap (291): 0
       Axis Labels (292):     "Rel X" (164), "Rel Y" (165), "Rel Vert Wheel" (284)
       Button Labels (293):   "Button Left" (157), "Button Middle" (158), "Button Right" (159), "Button Wheel Up" (160), "Button Wheel Down" (161), "Button Horiz Wheel Left" (162), "Button Horiz Wheel Right" (163), "Button Side" (279), "Button Extra" (280), "Button Forward" (281), "Button Back" (282), "Button Task" (283), "Button Unknown" (278), "Button Unknown" (278), "Button Unknown" (278), "Button Unknown" (278)
       Evdev Scrolling Distance (294): 1, 1, 1
       Evdev Middle Button Emulation (295):   0
       Evdev Middle Button Timeout (296):     50
       Evdev Middle Button Button (297):      2
       Evdev Third Button Emulation (298):    0
       Evdev Third Button Emulation Timeout (299):    1000
       Evdev Third Button Emulation Button (300):     3
       Evdev Third Button Emulation Threshold (301):  20
       Evdev Wheel Emulation (302):   0
       Evdev Wheel Emulation Axes (303):      0, 0, 4, 5
       Evdev Wheel Emulation Inertia (304):   10
       Evdev Wheel Emulation Timeout (305):   200
       Evdev Wheel Emulation Button (306):    4
       Evdev Drag Lock Buttons (307): 0

Как вы видите параметров с которыми можно поиграть достаточно много, но меня конкретно интересовало все связанное с колесом прокрутки. Названия параметров достаточно информативные и за скроллинг отвечает (Evdev Scrolling Distance), а более подробно про все параметры можно почитать тут https://www.mankier.com/4/evdev. Итак, если вам лень читать инструкцию, то эти три параметра это:

Option "VertScrollDelta" "integer"
The amount of motion considered one unit of scrolling vertically. Default: "1". Property: "Evdev Scrolling Distance".
Option "HorizScrollDelta" "integer"
The amount of motion considered one unit of scrolling horizontally. Default: "1". Property: "Evdev Scrolling Distance".
Option "DialDelta" "integer"
The amount of motion considered one unit of turning the dial. Default: "1". Property: "Evdev Scrolling Distance".

Честно говоря совершено не информативно и совершенно непонятно где применяется горизонтальный скроллинг. Экспериментальным путем я выяснил, что чувствительностью скроллинга можно управлять увеличивая или уменьшая первый параметр:

$ xinput set-prop 9 'Evdev Scrolling Distance' 4 1 1

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

Моя официальная страница на FaceBook
Мой микроблог в твиттер

Использование Remmina для администрирования Linux и Windows-серверов

Использование Remmina для администрирования Linux и Windows-серверов

Консольным клиентом FreeRDP пользоваться не всегда удобно, особенно начинающим системным администраторам (хотя, можно автоматизировать запуск и повесть доступы хоть на горячие клавиши) и поэтому было разработано программное ПО, упрощающее работу и представляющее собой обертку над библиотеками libfreerdp и некоторыми другими.


Сборка клиента облачного хранилища NextCloud из исходных кодов

Сборка клиента облачного хранилища NextCloud из исходных кодов

Для облачного хранилища Next Cloud (форк проекта OwnCloud), на данный момент, не предоставляется собранный клиент для платформы Linux в виде ночных-билдов для тестирования, но его можно собрать из исходных кодов. Сборка не представляет особой сложности и единственный вопрос который может возникнуть- это разрешить ряд зависимостей необходимых для сборки. В дальнейшем мы планируем настроить сборку пакета для Ubuntu Linux, но сейчас нет времени этим заниматься, тем более, что в клиенте предусмотрена интеграция с KDE (предыдущей версии) и сейчас эта интеграция сломана причем похоже и в OwnCloud тоже.


Linux Workstation autodeploy script (скрипт автоматического развертывания рабочих станций)

Linux Workstation autodeploy script (скрипт автоматического развертывания рабочих станций)

Наверное каждого системного администратора рано или поздно посещает идея написать скрипт автоматической настройки рабочих станций и серверов, причем вне зависимости от того какой вы администратор Windows или Linux и если такая идея вам пришла в голову, то значит вы дозрели. Без шуток, идея просто отличная и требует обязательного воплощения! Давайте сразу же начнем его и разрабатывать.


Подключение HASP-ключа в Linux

Подключение HASP-ключа в Linux

В этих наших Линуксах ничего просто так не бывает и если в Windows установка HASP-ключа для 1C Предприятие осуществляется простым мастером установки на этапе установки самой платформы, то в Linux ничего не бывает просто и придется проделать несколько лишних телодвижений.


KDE открывает ссылки при помощи Internet Explorer (Wine)

KDE открывает ссылки при помощи Internet Explorer (Wine)

Точнее сказать KDE пытается открыть любую ссылку при помощи Internet Explorer в wine, у него ничего не получается и он запускает огромное количество экземпляров процесса запуска, что приводит к остановке окружения пользователя. С этим багом думаю сталкивались многие KDE-шники и сегодня я расскажу как его лечить.


Смена браузера по умолчанию в KDE Neon

Смена браузера по умолчанию в KDE Neon

Возможно, что для вас это окажется небольшим сюрпризом, но просто выбрать в браузере использовать по умолчанию не достаточно и часть приложений будет открывать ссылки http и https предыдущим браузером, что довольно сильно раздражает.


Подключение сетевого (общий ресурс Windows) принтера Canon LBP7010C в KDE Neon

Подключение сетевого (общий ресурс Windows) принтера Canon LBP7010C в KDE Neon

Подключение принтера в Linux довольно нетривиальная задача, особенно если принтер не сетевой, а просто общий принтер к которому предоставили доступ через систему общего доступа в Windows.


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


Есть вопросы?
Спрашивайте и я обязательно вам отвечу!

* Поля обязательные для заполнения .