Configuration Examples

Mouse Support in XFree86 : Configuration Examples
Previous: Mouse Gallery
Next: Mouse Support in XFree86

## 7. Configuration Examples

This section shows some example `InputDevice` section for popular mice. All the examples assume that the mouse is connected to the PS/2 mouse port, and the OS supports the PS/2 mouse initialization. It is also assumed that `/dev/mouse` is a link to the PS/2 mouse port.

Logitech MouseMan+ has 4 buttons and a wheel. The following example makes the wheel movement available as the button 5 and 6.

    Section "InputDevice"
    	Identifier	"MouseMan+"
    	Driver		"mouse"
    	Option		"Device"	"/dev/mouse"
    	Option		"Protocol"	"MouseManPlusPS/2"
    	Option		"Buttons"	"6"
    	Option		"ZAxisMapping"	"5 6"
    EndSection

You can change button number assignment using the `xmodmap` command AFTER you start the X server with the above configuration. You may not like to use the wheel as the button 2 and rather want the side button (button 4) act like the button 2. You may also want to map the wheel movement to the button 4 and 5. This can be done by the following command:

    	xmodmap -e "pointer = 1 6 3 2 4 5"

After this command is run, the correspondence between the buttons and button numbers will be as shown in the following table.

    Physical Buttons	Reported as:
    ------------------------------------
    1 Left Button		  Button 1
    2 Wheel Button		  Button 6
    3 Right Button		  Button 3
    4 Side Button		  Button 2
    5 Wheel Negative Move	  Button 4
    6 Wheel Positive Move	  Button 5

For the MS IntelliMouse Explorer which as a wheel and 5 buttons, you may have the following `InputDevice` section.

    Section "InputDevice"
    	Identifier	"IntelliMouse Explorer"
    	Driver		"mouse"
    	Option		"Device"	"/dev/mouse"
    	Option		"Protocol"	"ExplorerPS/2"
    	Option		"Buttons"	"7"
    	Option		"ZAxisMapping"	"6 7"
    EndSection

The IntelliMouse Explorer has 5 buttons, thus, you should give "7" to the `Buttons` option if you want to map the wheel movement to buttons (6 and 7). With this configuration, the correspondence between the buttons and button numbers will be as follows:

    Physical Buttons	Reported as:
    ------------------------------------
    1 Left Button		  Button 1
    2 Wheel Button		  Button 2
    3 Right Button		  Button 3
    4 Side Button 1		  Button 4
    5 Side Button 2		  Button 5
    6 Wheel Negative Move	  Button 6
    7 Wheel Positive Move	  Button 7

You can change button number assignment using `xmodmap` AFTER you started the X server with the above configuration.

    	xmodmap -e "pointer = 1 2 3 4 7 5 6"

The above command will moves the side button 2 to the button 7 and make the wheel movement reported as the button 5 and 6. See the table below.

    Physical Buttons	Reported as:
    ------------------------------------
    1 Left Button		  Button 1
    2 Wheel Button		  Button 2
    3 Right Button		  Button 3
    4 Side Button 1		  Button 4
    5 Side Button 2		  Button 7
    6 Wheel Negative Move	  Button 5
    7 Wheel Positive Move	  Button 6

For the A4 Tech WinEasy mouse which has two wheels and 3 buttons, you may have the following `InputDevice` section.

    Section "InputDevice"
    	Identifier	"WinEasy"
    	Driver		"mouse"
    	Option		"Device"	"/dev/mouse"
    	Option		"Protocol"	"IMPS/2"
    	Option		"Buttons"	"7"
    	Option		"ZAxisMapping"	"4 5 6 7"
    EndSection

The movement of the first wheel is mapped to the button 4 and 5. The second wheel's movement will be reported as the buttons 6 and 7.

Mouse Support in XFree86 : Configuration Examples
Previous: Mouse Gallery
Next: Mouse Support in XFree86