ลดความไวของเมาส์ต่ำกว่าขีด จำกัด มาตรฐาน


42

ฉันมีเมาส์ USB ติดมากับโน้ตบุ๊ก Ubuntu ของฉัน เม้าส์ตัวนี้ไว (น่าเสียดาย) จริง ๆ และบางครั้งมันก็ยากที่จะตีไอคอนขนาดเล็กด้วยตัวชี้เมาส์ นี่เป็นปัญหาฮาร์ดแวร์จริงๆไม่ใช่ข้อผิดพลาดและไม่ใช่ความผิดของ Ubuntu / gnome ถึงกระนั้นฉันก็อยากจะแก้ไขปัญหานี้ผ่านทางซอฟต์แวร์ (การแก้ปัญหาด้วยฮาร์ดแวร์จะหมายความว่าซื้อเมาส์ใหม่)

ย้อนกลับไปใน Windows ถ้าฉันตั้งค่าความไวเป็นต่ำจริง ๆ มันก็สบายพอ ใน Ubuntu แม้ความไวและความเร่งต่ำสุดที่มีอยู่ (ในระบบ> ความละเอียด>เมนูเมาส์ ) ยังคงน่าผิดหวัง ฉันจะลดลงต่ำกว่าค่าเริ่มต้นขั้นต่ำได้อย่างไร

ฉันลอง xset แต่ดูเหมือนว่า xset จะเกี่ยวข้องกับการเร่งความเร็วและขีด จำกัด เท่านั้น แต่ไม่ใช่ความไวที่แท้จริง


1
ฉันจะใส่รหัสบรรทัดเหล่านี้ที่ไหน

คำตอบ:


55

ฉันมีเมาส์ Razer DeathAdder และในกรณีของคุณความไว / การเร่งความเร็วสูงเกินไปแม้ว่าฉันจะวางไว้ที่ระดับต่ำสุดในการตั้งค่าเมาส์ ดังนั้นเพื่อแก้ปัญหานี้ฉันใช้คำสั่ง xinput

ก่อนอื่นคุณจะต้องใช้ชื่อผลิตภัณฑ์และ ID ของเมาส์:

xinput list
...
 Razer Razer DeathAdder                     id=8    [slave  pointer  (2)]
...

จากนั้นคุณตั้งค่าระดับการลดความเร็วคงที่ที่เหมาะสมกับความต้องการของคุณด้วยคำสั่งนี้:

xinput set-prop 8 "Device Accel Constant Deceleration" 3
# 8 = DEVICE_ID
# 3 = LEVEL (factor) Higher = Slower.

ในการกำหนดค่าแบบต่อเนื่อง(และทำให้เป็นแบบกว้างระบบ)คุณจะต้องแก้ไข xorg.conf ( /etc/X11/xorg.conf)

Section "InputClass"
   Identifier      "Razer"                    # Whatever you want.
   MatchProduct    "Razer Razer DeathAdder"   # Product name from xinput list.
   Option          "ConstantDeceleration" "3" # The same value as xinput.
EndSection

เมื่อคุณรีบูตคุณควรมีผลลัพธ์เช่นเดียวกับคำสั่ง xinput

แจ้งให้เราทราบหากช่วยได้


! ที่น่าตื่นตาตื่นใจ ฉันเลิกไปแล้วเมื่อหลายสัปดาห์ก่อน ขอบคุณมากมันช่วยได้แน่นอน
Malabarba

5
Bah: "คุณสมบัติ 'Device Accel Constant Deceleration' ไม่มีอยู่คุณต้องระบุประเภทและรูปแบบของมัน
mlissner

1
ยังใช้งานได้แม้สำหรับ Linux Mint 17! ขอบคุณ :)
Richard de Wit

3
หากฉันไม่มีxorg.confไฟล์ฉันควรสร้างมันขึ้นมาหรือไม่?
Ciprian Tomoiagă

1
@mlissner ลองใช้ divice id อื่น ๆ ฉันมี 3 พอยน์เตอร์และฉันต้องใช้ 10
flcoder

6

Ubuntu 17.04

ทำตามคำแนะนำด้านล่าง แต่เปลี่ยน:

xinput set-prop 10 "Device Accel Constant Deceleration" 3

ไปที่:

xinput set-prop 10 "libinput Accel Speed" -0.4

ขอบคุณ @tambre ไม่แน่ใจว่ามันค่อนข้างเหมาะอย่างยิ่งกับการตั้งค่าเก่า แต่มันค่อนข้างใกล้

xset m 3

ที่ยังคงใช้งานได้ดีสวย จำเป็นต้องทราบวิธีการบันทึกจึงเป็นค่าเริ่มต้นในการรีบูต

Ubuntu 16.04

@JackTravis คำตอบของมันมีประโยชน์อย่างเหลือเชื่อ แต่ฉันคิดว่ามันคุ้มค่าที่จะอัปเดตสำหรับ 16.04 เพราะไฟล์ xorg.conf ได้ถูกย้ายและถูกแบ่งออกเป็นหลายไฟล์ ก่อนที่จะเขียนคำตอบนี้ฉันลองใช้xsetและเล่นกับการxinputตั้งค่าเป็นระยะเวลาหนึ่งก่อนที่จะตัดสินใจว่าการxinput ConstantDeceleration 3ตั้งค่าของ JackTravis เป็นสิ่งที่ดีที่สุดสำหรับทั้ง Logitech M510 ของฉันบนเดสก์ท็อปของฉัน

1. รายการหนู

$ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech M510                             id=10   [slave  pointer  (2)]
⎜   ↳ Synaptics Inc. Composite TouchPad / TrackPoint    id=13   [slave  pointer  (2)]
...

เมาส์ของฉันเป็นLogitech M510, id=10ดังนั้นฉันจะใช้ว่าในตัวอย่างนี้ คุณจะต้องแทนที่ด้วยสิ่งที่เรียกว่าเมาส์ของคุณ ทีนี้xinput set-propลองใช้การตั้งค่าต่าง ๆ จนกว่าเมาส์ของคุณจะขยับตามที่คุณต้องการ สิ่ง10ต่อไปนี้สอดคล้องกับid=10เมาส์ของฉันบนระบบของฉัน คุณอาจจะต้องเปลี่ยนสิ่งนั้น

2. เปลี่ยนการตั้งค่าของคุณชั่วคราว

$ xinput set-prop 10 "Device Accel Constant Deceleration" 3

หากคุณอยากรู้ว่าการตั้งค่าอื่น ๆ มีผลต่ออุปกรณ์ของคุณอย่างไรลอง

$ xinput --list-props 10

เพื่อล้างการตั้งค่าหลังจากที่ฉันทำมันเลอะจริงๆสิ่งที่ฉันต้องทำคือถอดปลั๊กและเสียบเม้าส์ของฉันอีกครั้ง

3. บันทึกการตั้งค่าใหม่อย่างถาวร

ถ้าคุณชอบค่าคงที่การลดความเร็ว 3 คุณต้องเพิ่มไฟล์ xorg.conf ด้วยวิธี Ubuntu 16.04 ใหม่: โดยการเพิ่มไฟล์ใหม่ใน/usr/share/X11/xorg.conf.d/ คุณจะต้องเปลี่ยนLogitech M510และlogitech-m510ในชื่อไฟล์เพื่อให้ตรงกับเมาส์ของคุณ ฉันคิดว่า60-จุดเริ่มต้นของชื่อไฟล์คือลำดับความสำคัญซึ่งไฟล์เหล่านี้ถูกโหลด คำสั่งเชลล์แบบหนึ่งบรรทัดต่อไปนี้คือสิ่งที่ฉันใส่ในmachineSetup.shไฟล์ของฉันใน Dropbox เพื่อให้ฉันสามารถปรับแต่งเครื่องใหม่ได้อย่างรวดเร็วตามที่ฉันชอบภายในไม่กี่นาทีของการติดตั้งใหม่:

sudo sh -c "echo 'Section \"InputClass\"\n\
   Identifier      \"My awesome new mouse\"\n\
   MatchProduct    \"Logitech M510\"\n\
   Option          \"ConstantDeceleration\" \"3\"\n\
EndSection\n' > /usr/share/X11/xorg.conf.d/60-logitech-m510.conf"

หรือถ้าคุณต้องการทำด้วยวิธี GUI เปิดตัวแก้ไขเป็นรูทแล้ววางและแก้ไขสิ่งต่อไปนี้/usr/share/X11/xorg.conf.d/60-<whatever>.conf

Section "InputClass"
   Identifier      "My Awesome Blue Mouse"
   MatchProduct    "Logitech M510"
   Option          "ConstantDeceleration" "3"
EndSection

4. รีบูต

แค่นั้นแหละ. เพียงรีบูตและตรวจสอบว่าการตั้งค่าใหม่มีผล


1
ฉันโชคไม่ดีที่ได้รับต่อไปนี้: property 'Device Accel Constant Deceleration' doesn't exist, you need to specify its type and formatเมื่อลองคำสั่งในขั้นตอนที่ 2 (ด้วยรหัสอุปกรณ์ของฉัน)
tambre

@tambre ฉันเดาว่าคุณไม่ได้ใช้ ID ตัวเลขที่ถูกต้องซึ่งระบุไว้ในขั้นตอนที่ 1 เมื่อคุณทำขั้นตอนที่ 2 หากไม่ใช่กรณีนี้ฉันอาจจะไม่รู้จักพอที่จะช่วยคุณได้
GlenPeterson

1
หลังจากแสดงรายการคุณสมบัติแล้วDevice Accel Constant Decelerationอย่ามีอยู่จริง ดูเหมือนว่าจะใช้ libinput เป็นไดรเวอร์ดังนั้นฉันจึงต้องแก้ไขค่าของlibinput Accel Speedซึ่งมีค่าที่ถูกต้องตั้งแต่ -1 ถึง 1 แทน
tambre

1
สิ่งนี้ทำงานได้สำหรับฉัน แต่เมาส์ของฉัน ("Razer Razer DeathAdder 2013") ปรากฏตัวหลายครั้งภายใต้Virtual core pointer(สองครั้ง) และVirtual core keyboard(หนึ่งครั้ง) เฉพาะpointerอุปกรณ์ที่มีเพื่อให้ฉันได้เพื่อให้แน่ใจว่าได้เลือกหนึ่งในอุปกรณ์เหล่านั้นเมื่อทดสอบกับDevice Accel Constant Deceleration ไฟล์ยังคงทำงานอย่างสมบูรณ์ xinputxorg.conf.d
Alex

2

ตอบกลับล่าช้า แต่ฉันคิดว่านี่คุ้มค่าที่จะโพสต์:

เนื่องจากเรากำลังพูดถึงเมาส์สำหรับเล่นเกมที่นี่ ดีกว่าคือปิดการเร่งความเร็วเมาส์ทั้งหมด (มีประโยชน์สำหรับนักเล่นเกม FPS และอื่น ๆ ) บันทึกรอบ CPU บางส่วนโดยไม่ใช้เพื่อคำนวณการเร่งความเร็วเมาส์และมีแนวโน้มที่จะอ่านได้แม่นยำมากขึ้น (ขึ้นอยู่กับหรือเซ็นเซอร์ฮาร์ดแวร์เมาส์มีการคาดการณ์ในตัว)

xinput set-prop <mousedevice_nr> "Device Accel Profile" -1

หรือ

Section "InputClass"
   Identifier      "Razer"
   MatchProduct    "Razer DeathAdder"         # Product name from xinput list.
   Option          "AccelerationProfile" "-1" # Turn mouse accel off saving CPU cycles
EndSection

แหล่ง


ฉันได้รับสิ่งนี้: X Error of failed request: BadValue (integer parameter out of range for operation).
MasterOfBinary

ดีมากขอบคุณมาก ฉันมีปัญหากับอุปกรณ์ต่อพ่วง Kingsis Evoluent VerticalMouse 3 มันมีการตั้งค่า DPI ที่ด้านล่างของเมาส์และที่การตั้งค่า DPI สูงสุด - แม้การตั้งค่าความไวต่ำสุดยังคงสูงเกินไป
anon58192932

2

การปรับเปลี่ยนเล็กน้อยในคำตอบของ Glen สิ่งนี้ใช้ได้กับเมาส์ Logitech ของฉันและเพิ่ม "ความช้า" เป็นสองเท่าจาก 1 เป็น 2

เพิ่มใน ~ / .profile (ดังที่แสดงไว้ในความคิดเห็น) (หรือ. bashrc แต่คุณต้องเปิดเครื่องเทอร์มินัลเพื่อให้การเปลี่ยนแปลงเกิดขึ้น)

MOUSE_SLOWNESS=2
MOUSE_ID=`xinput list | grep Mouse | awk '{print $(NF-3)}' | cut -c4-5`
xinput set-prop $MOUSE_ID "Device Accel Constant Deceleration" $MOUSE_SLOWNESS

1
ฉันคิดว่ามันจะดีกว่าที่จะเพิ่มเส้นที่ส่วนท้ายของแทน.profile ทำงานโดยเชลล์ล็อกอินแบบโต้ตอบเท่านั้นในขณะเดียวกันก็จะทำงานทุกครั้งที่เชลล์เริ่มทำงาน ดูคำตอบนี้สำหรับข้อมูลเพิ่มเติม .bashrc.profile.bashrcbash
chus

ในทางเทคนิค.bash_aliasesทำงานได้ดีเพราะ.bashrcไฟล์ubuntu มาตรฐานโหลดถูกต้องหรือไม่
anon58192932

1

หากคุณใช้พอร์ต PS2 การเคลื่อนไหวของเมาส์จะช้าลงมากสำหรับความละเอียดของเมาส์เดียวกัน

สำหรับเมาส์ของคุณลองใช้ตัวแปลง USB เป็น PS2 และวางเมาส์ไว้ที่พอร์ต PS2

แก้ไข:

ฉันได้พบxorg.confวิธีแก้ปัญหาการทำงาน:

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Sensitivity" "0.2"
EndSection

โดยที่ความไว 1 เป็นค่าเริ่มต้นและ 0.2 หนึ่งลดลงห้าครั้ง


นั่นเป็นความคิดสร้างสรรค์ ฉันคิดว่าฉันได้รับตัวแปลงกลับมาที่บ้านดังนั้นฉันจะลองในวันพรุ่งนี้
Malabarba

ฉันพบโซลูชัน xorg.conf ที่ใช้งานได้ แก้ไขคำตอบแล้ว
iugamarian

1
แม้ว่ามันจะไม่สามารถใช้ได้กับแล็ปท็อป
Daniel Silva

อยู่ที่ไหนxorg.conf?
สีเขียว
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.