Langkah-langkah untuk meningkatkan sensitivitas mouse:
Daftar pertama semua perangkat:
$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ PixArt USB Optical Mouse id=10 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech Touchpad id=15 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ USB2.0 UVC 2M WebCam id=9 [slave keyboard (3)]
↳ Asus Laptop extra buttons id=13 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=14 [slave keyboard (3)]
↳ USB Keyboard id=11 [slave keyboard (3)]
↳ USB Keyboard id=12 [slave keyboard (3)]
Dalam contoh ini kita melihat id mouse adalah 10. Selanjutnya daftar propertinya:
$ xinput list-props 10
Device 'PixArt USB Optical Mouse':
Device Enabled (140): 1
Coordinate Transformation Matrix (142): 10.400000, 0.000000, 0.000000, 0.000000, 10.400000, 0.000000, 0.000000, 0.000000, 10.400000
Device Accel Profile (265): 0
Device Accel Constant Deceleration (266): 1.000000
Device Accel Adaptive Deceleration (267): 1.000000
Device Accel Velocity Scaling (268): 10.000000
Device Product ID (260): 2362, 9488
Device Node (261): "/dev/input/event5"
Evdev Axis Inversion (269): 0, 0
Evdev Axes Swap (271): 0
Axis Labels (272): "Rel X" (150), "Rel Y" (151), "Rel Vert Wheel" (264)
Button Labels (273): "Button Left" (143), "Button Middle" (144), "Button Right" (145), "Button Wheel Up" (146), "Button Wheel Down" (147), "Button Horiz Wheel Left" (148), "Button Horiz Wheel Right" (149)
Evdev Middle Button Emulation (274): 0
Evdev Middle Button Timeout (275): 50
Evdev Third Button Emulation (276): 0
Evdev Third Button Emulation Timeout (277): 1000
Evdev Third Button Emulation Button (278): 3
Evdev Third Button Emulation Threshold (279): 20
Evdev Wheel Emulation (280): 0
Evdev Wheel Emulation Axes (281): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (282): 10
Evdev Wheel Emulation Timeout (283): 200
Evdev Wheel Emulation Button (284): 4
Evdev Drag Lock Buttons (285): 0
«Matriks Transformasi Koordinat» persis seperti yang kita inginkan. Ingat №142-nya.
Dengan mengubah properti ini, kami dapat meningkatkan kecepatan penunjuk. Nilai-nilai ini sebenarnya adalah matriks transformasi yang digunakan untuk menghitung gerakan pointer . Dari tautan:
Secara default, CTM untuk setiap perangkat input dalam X adalah matriks identitas. Sebagai contoh, katakanlah Anda menyentuh layar sentuh pada titik (400, 197) pada layar:
⎡ 1 0 0 ⎤ ⎡ 400 ⎤ ⎡ 400 ⎤
⎜ 0 1 0 ⎥ · ⎜ 197 ⎥ = ⎜ 197 ⎥
⎣ 0 0 1 ⎦ ⎣ 1 ⎦ ⎣ 1 ⎦
Koordinat X dan Y dari kejadian perangkat adalah input dalam matriks kedua dari perhitungan. Hasil perhitungan adalah di mana koordinat X dan Y acara dipetakan ke layar. Seperti yang ditunjukkan, matriks identitas memetakan koordinat perangkat ke koordinat layar tanpa perubahan apa pun.
Jadi, apa yang ingin kita lakukan dengan matriks - adalah mengatur nilai-nilai yang sesuai dengan x dan y untuk nilai tertentu lainnya, dan ini akan mengubah kecepatan pointer. Contoh dari PC saya:
$ xinput set-prop 10 142 2.400000, 0.000000, 0.000000, 0.000000, 2.400000, 0.000000, 0.000000, 0.000000, 1.000000
Itu xinput set-prop <device-id> <property-number> <property-values>
. Mainkan sedikit dengan ini sampai Anda menemukan yang sesuai. Catatan: jangan mengubah nilai terakhir dari matriks. Itu kesalahan saya ketika saya mencoba untuk mendapatkan pekerjaan - dalam hal ini Anda tidak akan melihat perbedaan.
Paling tidak, versi terbaru dari xinput
perangkat yang memungkinkan menentukan dan opsi berdasarkan nama, jadi contoh ini juga dapat berfungsi:
xinput set-prop 'PixArt USB Optical Mouse' 'Coordinate Transformation Matrix' 1.2 0 0 0 1.2 0 0 0 1
Perubahan ini hanya aktif untuk sesi saat ini, jadi setelah Anda memilih sensitivitas yang baik, Anda harus menerapkannya secara permanen dengan menambahkannya ke xorg.conf
(atau membuat file seperti /etc/X11/xorg.conf.d/40-mouse-sensitivity.conf
):
Section "InputClass"
Identifier "PixArt USB Optical Mouse"
MatchIsPointer "Yes"
Option "TransformationMatrix" "1.2 0 0 0 1.2 0 0 0 1"
EndSection
Jika Anda tidak yakin apakah ini berfungsi, ubah ini menjadi nilai besar seperti 5.0
, simpan file dan reboot.
Ucapan terima kasih: Saya berterima kasih kepada Simon Thum dari milis xorg, dia adalah orang yang memberi petunjuk tentang matriks.