Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free.

As the title says, I want to increase the number of rows that are passed when I use the mouse wheel for scrolling. I know that there exists ways to do that for Firefox and Chromium, although I want something for the entire system, mainly because of the PDF reader.

I am on a Desktop and use a Microsoft Wireless Mouse 5000.

share|improve this question
2  
One would think that this should be possible from the Mouse & Touchpad system configuration. Too bad, we still need 3rd party software (for now). –  Domi Oct 20 '14 at 17:48

4 Answers 4

up vote 26 down vote accepted
+50

In the Gnome Shell and on Unity there is no method for accelerating the mouse wheel speed. If you really require such a option, you neighter have to switch to a desktop enviroment that supports that option (e.g. KDE) or you have to live with a hack that not always works reliable. The hack can be applied with an old tool called imwheel. In the following I will descripe how imwheel can be used.

Install it with the following command or from the Software Center:

$ sudo apt-get install imwheel

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:

".*"
None,       Up,     Up,     3
None,       Down,   Down,   3

The 3 is the increase of the scroll. For more specific scroll increases take a look to the manpage

$ man imwheel

or read the README of the project.

You can start it 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
share|improve this answer
1  
It worked! Thanks, although the only thing I have to complain is that using imwheel disables the function to change between windows just scrolling the mouse over their icons in the Unity Launcher. –  Rodrigo Martins Jun 6 '13 at 13:04
1  
You're welcome. Yesterday I checked your problem, if you only need the increased wheelspeed on your pdf viewer you can replace the ".*" by "Evince" if you're using Evince. Then the Unity-Launcher works as expected. –  tvn Jun 7 '13 at 8:30
1  
Can the numbers go lower? My wheel scrolls way too fast. Trying '1' in place of '3' is still too fast. –  DarenW Sep 5 '13 at 0:47
1  
@DarenW have you tried numbers like '0.5' ou '0.1' ? –  Rodrigo Martins Sep 26 '13 at 16:53
2  
This is a bad, hacky not really working method. In Nautilus the marked files jump 3 lines back or forth instead of actually scrolling. It scrolls when you getting "over the borders" but its like bushing up/down on the keyboard 3 times. Same in sublime text and I guess in a lot of other progs. (Ubuntu 13.10) –  redanimalwar Feb 4 '14 at 5:45

The accepted answer has a config that for whatever reason maps the scrolling to UP and DOWN on the keyboard. Makes no sense to me.

I have found a perfect script that actually maps to the mouse and adds a GUI to set up the mouse speed.

#!/bin/bash
# Version 0.1 Tuesday, 07 May 2013
# Comments and complaints http://www.nicknorton.net
# GUI for mouse wheel speed using imwheel in Gnome
# imwheel needs to be installed for this script to work
# sudo apt-get install imwheel
# Pretty much hard wired to only use a mouse with
# left, right and wheel in the middle.
# If you have a mouse with complications or special needs,
# use the command xev to find what your wheel does.
#
### see if imwheel config exists, if not create it ###
if [ ! -f ~/.imwheelrc ]
then

cat >~/.imwheelrc<<EOF
".*"
None,      Up,   Button4, 1
None,      Down, Button5, 1
Control_L, Up,   Control_L|Button4
Control_L, Down, Control_L|Button5
Shift_L,   Up,   Shift_L|Button4
Shift_L,   Down, Shift_L|Button5
EOF

fi
##########################################################

CURRENT_VALUE=$(awk -F 'Button4,' '{print $2}' ~/.imwheelrc)

NEW_VALUE=$(zenity --scale --window-icon=info --ok-label=Apply --title="Wheelies" --text "Mouse wheel speed:" --min-value=1 --max-value=100 --value="$CURRENT_VALUE" --step 1)

if [ "$NEW_VALUE" == "" ];
then exit 0
fi

sed -i "s/\($TARGET_KEY *Button4, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button4, and write new value.
sed -i "s/\($TARGET_KEY *Button5, *\).*/\1$NEW_VALUE/" ~/.imwheelrc # find the string Button5, and write new value.

cat ~/.imwheelrc
imwheel -kill

There is also a video where it is introduced. I have not even finished watching this because I got it running in no time. The following would install the required packages, download the script and execute it for us:

sudo apt-get install -y imwheel
wget http://www.nicknorton.net/mousewheel.sh ~/bin/set-mousewheel
chmod +x ~/bin/set-mousewheel
~/bin/set-mousewheel

Set the wheel speed on a nice slider and be happy. Later just change with set-mousewheel command.

Not sure if imweel is automatically started after install, else we need to add it to startup applications.

share|improve this answer
2  
Outstanding stuff! The script doesn't work out of the box in Ubuntu 14.04 LTS, but if I take the config directly out of the script and put it into .imwheelrc, it works like a charm. –  aroll605 May 26 '14 at 0:29
    
There seems to be a bug with it in 14.04 LTS. Occasionally, it would stop the wheel from working completely, until I restart the process. Happens only on boot and 'imwheel' is included in the startup applications list. –  aroll605 Jun 23 '14 at 17:21

To provide a concise answer for Ubuntu 14.04 (combining the answers from @tvm and @redanimalwar with the comment from @aroll605), it seems the best option to actually increase the scroll wheel speed is to install imwheel

$ sudo apt-get install imwheel

then create the file ~/.imwheelrc containing

".*"
None,      Up,   Button4, 3
None,      Down, Button5, 3
Control_L, Up,   Control_L|Button4
Control_L, Down, Control_L|Button5
Shift_L,   Up,   Shift_L|Button4
Shift_L,   Down, Shift_L|Button5

where you should try different values for # in the lines

None,      Up,   Button4, #
None,      Up,   Button5, #

To test the settings use the command

killall imwheel && imwheel

to stop any previous running instances before starting.

As a note, using the ~/.imwheelrc recommended in the accepted answer does not actually increase the scroll wheel speed. Rather, it replaces scrolling with multiple arrow key strokes. This has the disadvantage of not being able to scroll a window until you change focus to it, not the default behavior.

share|improve this answer

While the above imwheel suggestions helped a bit, I found that removing the mechanical scroll-clicking mechanism made my mouse wheel much more pleasant to use -- not only removing the click, but making it faster and more precise to control!

And it only took 3 minutes - check out these instructions:

http://www.instructables.com/id/Making-a-mouse-wheel-not-click./

In a nutshell, you're removing this left spring (be careful to get the right spring back in place exactly):

enter image description here

Note: I have a standard, cheap mouse - a Logitech B100, others report success on similar models. Your mileage may vary.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.