Düğmeler için kullandığım bir farem var. Yalnızca farenin hareket girdisini devre dışı bırakmak istiyorum. Sensörü fiziksel olarak kapatmak işe yaramıyor.
Düğmeler için kullandığım bir farem var. Yalnızca farenin hareket girdisini devre dışı bırakmak istiyorum. Sensörü fiziksel olarak kapatmak işe yaramıyor.
Yanıtlar:
Kullanabilirsiniz xinput
.
>xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Mouse0 id=6 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Keyboard0
Orada bu durumda fare adını alırsınız Mouse0.
Aşağıdaki komutla farenizin hızını 100000'e kadar yavaşlatırsınız, bu da temelde sıfırdır.
xinput --set-prop 6 'Device Accel Constant Deceleration' 100000
veya
xinput --set-prop Mouse0 'Device Accel Constant Deceleration' 100000
Geri dönmek için aynı şeyi kullanabilirsiniz
xinput --set-prop Mouse0 'Device Accel Constant Deceleration' 1
Faremde 'Aygıt Hızlanma Sabit Yavaşlama' özelliği yok. İle hareketi hala devre dışı bırakabildim
xinput set-prop 9 266 -1
xinput set-prop 9 269 0 1
ve ile yeniden etkinleştirin
xinput set-prop 9 269 1 0
input set-prop 9 266 0.0
Düğmeleriyle de devre dışı bıraktım
xinput set-button-map 9 0 0 0
Cihaz 9, Mitsumi Electric Apple Optik USB Farem .
Cihaz listesi
Device 'Mitsumi Electric Apple Optical USB Mouse':
Device Enabled (132): 1
Coordinate Transformation Matrix (134): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Accel Speed (266): -1.000000
libinput Accel Speed Default (267): 0.000000
libinput Accel Profiles Available (268): 0, 0
libinput Accel Profile Enabled (269): 0, 1
libinput Accel Profile Enabled Default (270): 1, 0
libinput Natural Scrolling Enabled (271): 0
libinput Natural Scrolling Enabled Default (272): 0
libinput Send Events Modes Available (250): 1, 0
libinput Send Events Mode Enabled (251): 0, 0
libinput Send Events Mode Enabled Default (252): 0, 0
libinput Left Handed Enabled (273): 0
libinput Left Handed Enabled Default (274): 0
libinput Scroll Methods Available (275): 0, 0, 1
libinput Scroll Method Enabled (276): 0, 0, 0
libinput Scroll Method Enabled Default (277): 0, 0, 0
libinput Button Scrolling Button (278): 2
libinput Button Scrolling Button Default (279): 274
libinput Middle Emulation Enabled (280): 0
libinput Middle Emulation Enabled Default (281): 0
Device Node (253): "/dev/input/event4"
Device Product ID (254): 1452, 772
libinput Drag Lock Buttons (282): <no items>
libinput Horizonal Scroll Enabled (255): 1
Ben okursanız man 4 mousedrv
doğru, kendi xorg.conf ait CorePointer bölümünde, ayarlayabilirsiniz,
Option "EmulateWheel" true
Option "EmulateWheelButton" 0
Option "EmulateWheelInertia" 10000
hareketleri fare tekerleği düğmesi olaylarına dönüştürür, ancak atalet ayarı bunu kaydetmek için çok duyarsız hale getirir. Modern sistemlerde, mousedrv yerine evdev'dir. Bu, çalışma zamanında xinput kullanılarak da ayarlanabilir, örneğin:
xinput --set-prop 17 'Evdev Wheel Emulation' 1
xinput --set-prop 17 'Evdev Wheel Emulation Button' 0
xinput --set-prop 17 'Evdev Wheel Emulation Inertia' 10000
Burada 17 kendi cihaz numaranız olmalıdır. Bu numarayı aygıt adına göre almak ve bir başlangıç komut dosyası sırasında $ device-id'de depolamak için bir işlev kullanıyorum.
set_device_id() {
device_id=$(xinput --list | grep -m 1 "$1")
device_id=${device_id##*id=}
device_id=${device_id%%[[:space:]]*}
}
Bu maalesef cihazın kaydırma tekerleği girişini devre dışı bırakmanın yan etkisi vardır.
xinput list 6
(6
cihaz nerede ) ile bulunabilir. Mülklerle ilgili dokümantasyona