Beforehand
With the currently used input driver system it is not possible to change the scroll speed of your mouse, at least not without drawbacks. You are able to adjust the scroll speed for Qt-Applications using a KDE Settings but the only current way to change the scrolling in a generic fashion is by using imwheel
which seems to be problematic in many ways (see comments). In the future this will be fixed with libinput
and the systemd hardware database.
Current Way
Install imwheel
with the following command or from the Software Center:
$ sudo apt-get install imwheel
Create (if necessary) and edit the configfile ~/.imwheelrc
with an editor of your choice (e.g. gedit
). Fill in the following for increasing the scroll speed for every Command. NB: This configuration file will apply these new scroll settings to all programs, (including the terminal, which may not be what you want).
".*"
None, Up, Up, 3
None, Down, Down, 3
If you want to only apply these settings to Chrome
, for instance, use these settings instead:
".*-chrome*"
None, Up, Up, 3
None, Down, Down, 3
The 3
is a scroll multiplier to increase the effectiveness of the scroll wheel. In the README of the project it is called "REPS". The readme states:
[ REPS ]
Reps (Repetitions) lets you say a number for how many times you want the output keysyms to be pressed. See the chart on the default bindings for the default number of reps for each modifier-combo (The chart is near the end of this document).
In other words, it is a scroll multiplier. If REPS
is set to 3
, that means that when your mouse wheel commands one scroll command, the software intercepts this command and sends 3 commands to the PC instead of 1, thereby making it scroll 3 times farther, or "faster".
For more information also take a look at the manpage:
$ man imwheel
or refer to the README of the project.
You can start imwheel
by typing:
$ imwheel
Be sure that you don't start the imwheel twice! That's a known bug, but you can stop imwheel with the command:
$ killall imwheel
To get imwheel
to automatically start every time your computer boots, you must add it to the startup menu AFTER an x-window is loaded. IMPORTANT: since imwheel relies on an x-window to already be running, it will NOT work if you add it to crontab, /etc/init.d, or /etc/rc.local. That means you must do it this way instead:
Ubuntu:
Use the "Startup Applications" GUI editor to Add imwheel
as a Startup Program: https://askubuntu.com/a/48327/327339
Xubuntu:
Use the "Session and Startup" GUI editor --> Application Autostart --> Add to add imwheel
as a startup program.
More screenshots here: https://askubuntu.com/a/369443/327339.
Future
This tutorial is currently under development.
libinput
seems to be included with Wily Werewolf (15.10) where you need to install the package xserver-xorg-input-libinput
. After you installed libinput
with
$ sudo apt-get install xserver-xorg-input-libinput
it should be used for every input after you restarted the Xorg (logout would be sufficient). Now that you are using libinput
you are able to adjust the settings of your mouse. You can find a full tutorial in the file /lib/udev/hwdb.d/70-mouse.hwdb. Let me cover here only the basics.
The following steps are need to be done as root
. Because of that I am friendliy reminding you that everything you do you need to take responibility.
First get the vendor id <vid>
and the product id <pid>
using lsusb
. Here with a MX 518 Logitech Mouse as example. If you have the following line in the output of lsusb
.
Bus 005 Device 002: ID 046d:c051 Logitech, Inc. G3 (MX518) Optical Mouse
The <vid>
is 046d
and the <pid>
is c051
.
Then create a File that looks like the following with gksudo gedit /etc/udev/hwdb.d/71-mouse-local.hwdb
mouse:usb:v<vid>p<pid>:name:*:
MOUSE_WHEEL_CLICK_ANGLE=??
For example this file for the Logitech MX 518 example above:
mouse:usb:v046dpc051:name:*:
MOUSE_WHEEL_CLICK_ANGLE=30
This file sets the mouse wheel click angle to 30° (default is usually 15). To use this setting, update the hwdb with the following commands:
udevadm hwdb --update
udevadm trigger /dev/input/event${id}
One can figure out the ${id}
using xinput
(look out for the id of your mouse) and then run xinput list-props ${xinput_id}
.
Best Answer
I removed the USB dongle that comes with my wireless mouse and plugged it back and fixed my scrolling speed instantly.