Reworking the article
This article seems to be a mess, but I don't exactly know where to start, especially since this may quickly turn into a general mouse configuration article. However, here are some notes:
- Arch currently seems to put its X config files in
/usr/share/X11/xorg.conf.d/, rather than
- Arch seems to use libinput by default now (can't say this for sure, might just be my LXQt setup).
Here is some stuff that I was considering to add but held back for the reason stated above; feedback is appreciated:
Distinguishing between multiple pointer devices
If you have multiple pointer devices connected, but you want to configure them separately, you may distinguish between them by their vendor and product name.
First, list the xinput devices:
$ xinput --list
Note down the name (e.g. 'Logitech USB Optical Mouse'). This name has to be split into a vendor and a product string. It seems that the first space always acts as a separator, regardless of what appears to make more sense.
Now, apart from
MatchProduct to the section of your pointer device:
Section "InputClass" Identifier "Logitech Mouse 1000dpi" MatchVendor "Logitech" MatchProduct "USB Optical Mouse" Driver "libinput" MatchIsPointer "yes" Option "AccelProfile" "flat" Option "AccelSpeed" "-0.6" EndSection
Restart X and make sure that the settings are still applied correctly.
Matching speed of different mice (libinput)
When you are switching mice, you may want to ease the transition by having them move the pointer at the same speed, regardless of their DPI settings.
In this example, a Logitech mouse with a sensitivity of 1000 DPI is used along with ZOWIE gaming mouse with a sensitivity of 400 DPI. This means that in order to match the ZOWIE mouse, the Logitech mouse has to move 40% slower (keep in mind that an acceleration greater than 0 may lead to pixels being skipped):
Section "InputClass" Identifier "Logitech Mouse 1000dpi" MatchVendor "Logitech" MatchProduct "USB Optical Mouse" Driver "libinput" MatchIsPointer "yes" Option "AccelProfile" "flat" Option "AccelSpeed" "-0.6" EndSection Section "InputClass" Identifier "Zowie Mouse 400dpi" MatchVendor "Kingsis" MatchProduct "Peripherals ZOWIE Gaming mouse" Driver "libinput" MatchIsPointer "yes" Option "AccelProfile" "flat" Option "AccelSpeed" "0.0" EndSection
- Hi, yes a different section structure would help to condense the article. Regarding your questions: A crosslink to Xorg#Input devices should clarify directory paths. The default to libinput is general now yes, but only recently (Xorg#Input devices).
- Regarding your above example. The first conf file seems a natural extension of how Mouse_acceleration#In Xorg configuration ends (matching the mouse exactly while you give another example of relevant Options at the same time). I think it could be merged in there. The second section you propose with two configs does not seem necessary to me. A sentence stating that exact matching enables to have different settings per device should be enough. --Indigo (talk) 10:29, 9 February 2017 (UTC)
Outdated xinput options
- You might want to look at the script I use to configure my input devices: https://github.com/denilsonsa/small_scripts/blob/master/xinput_configure_all_my_devices.py Denilsonsa (talk) 07:59, 18 April 2019 (UTC)
Hello, I believe that this could be expanded with an explanation of different drivers (such as evdev) and differences between the curves. Xorg Documentation shows that there are seven types of mouse acceleration. None, Device-dependent, polynomial, smooth linear, simple, power, linear, and limited. Some of these are visually graphed here. - although it seems some types may have been replaced/removed since the creation of that article. Also, Constant Deceleration does exist, you can edit it in your xorg config. Here's mine:
Section "InputClass" Identifier "Glorious Model O" MatchIsPointer "Yes" Driver "evdev" Option "AccelerationScheme" "predictable" Option "AccelerationProfile" "6" Option "ConstantDeceleration" "1" Option "AdaptiveDeceleration" "1" Option "VelocityScale" "1" Option "AccelerationNumerator" "13" Option "AccelerationDenominator" "100" Option "AccelerationThreshold" "1" EndSection