imwheel is a tool for tweaking mouse wheel behavior, on a per-program basis. It can map mousewheel input to keyboard input, increase mousewheel speed, and has support for modifier keys.
The official HTML documentation (manpage) is available in the official website.
imwheel matches window class strings with regular expressions for deciding which windows to apply tweaks to.
Getting the window class string
Run xprop to get the class string. The program will exit when a window is clicked.
xprop WM_CLASS | grep -o '"[^"]*"' | head -n 1
So for the document viewer zathura, this will return the following:
Edit your configuration file
Create or edit
~/.imwheelrc. In this configuration file lines can be added for each program you want to tweak mousewheel behavior for. The following example will increase the mousewheel speed for the document viewer zathura:
# Speed up scrolling for the document viewer "^zathura$" None, Up, Button4, 4 None, Down, Button5, 4
Run imwheel simply like so:
The program will print its PID and run in the background. You may wish to run imwheel in a startup script.