Fare hassasiyetini standart sınırın altına düşürün


42

Ubuntu dizüstü bilgisayarıma takılı bir USB farem var. Bu fare (ne yazık ki) gerçekten hassastır ve bu nedenle fare imleci ile küçük simgelere çarpmak bazen zorlaşıyor. Bu gerçekten bir donanım sorunudur, bir hata değildir ve Ubuntu'nun / gnome'un hatası değildir. Yine de, bu meseleyi yazılım aracılığıyla çok isterdim (donanım üzerinden çözmek yeni bir fare almak anlamına gelir).

Windows'a dönersek, hassasiyeti gerçekten düşük olarak ayarladıysam, yeterince rahattı. Ubuntu'da, mevcut olan en düşük hassasiyet ve hızlanma bile ( Sistem> Prerences> Fare menüsünde) hala sinir bozucu. Bunu varsayılan minimum değerin altına nasıl düşürebilirim?

Xset'i denedim, ancak xset yalnızca hızlanma ve eşikle ilgileniyor, ancak gerçek duyarlılıkla ilgilenmiyor.


1
Bu kod satırlarını nereye koyacağım?

Yanıtlar:


55

Bir Razer DeathAdder farem var ve sizin durumunuzda olduğu gibi, fare tercihlerinde en düşük seviyeye koymama rağmen hassasiyet / ivme çok yüksek. Bu sorunu çözmek için, xinput komutunu kullandım.

İlk önce, farenizin Ürün Adı ve Kimliğine ihtiyacınız olacak:

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

Ardından, bu komutla ihtiyaçlarınıza uygun sabit yavaşlama seviyesini ayarlarsınız:

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

Yapılandırmayı kalıcı kılmak (ve sistemi geniş kılmak) için , xorg.conf ( /etc/X11/xorg.conf) kodunuzu düzenlemeniz gerekecektir .

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

Yeniden başlattıktan sonra, xinput komutuyla aynı sonuca sahip olmalısınız.

Yardımcı olursa haberim olsun.


İnanılmaz! Onu haftalar önce vermiştim. Çok teşekkürler, gerçekten yardımı oluyor.
Malabarba

5
Bah: "property Accel Constant Deceleration" özelliği bulunmuyor, türünü ve biçimini belirtmeniz gerekiyor
mlissner

1
Linux Mint 17 için bile çalışıyor! Teşekkürler :)
Richard de Wit

3
Dosyam yoksa xorg.conf, oluşturmalı mıyım?
Ciprian Tomoiagă

1
@mlissner mayın 3 işaretçileri vardır, farklı bir divice id deneyin ve ben 10 kullanmak zorunda kaldı
flcoder

6

Ubuntu 17.04

Aşağıdaki talimatları izleyin, ancak değiştirin:

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

Kime:

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

Teşekkürler @tambre. Bunun eski ayar kadar ideal olduğundan emin değilim, ama oldukça yakın.

xset m 3

Bu hala oldukça iyi çalışıyor. Nasıl tasarruf edeceğinizi bulmanız gerekiyor, bu yüzden yeniden başlatmada varsayılan değer budur.

Ubuntu 16.04

@ JackTravis'in cevabı inanılmaz derecede yardımcı oldu, fakat xorg.conf dosyası taşındığı ve birden fazla dosyaya bölündüğü için 16.04 için güncellemeye değer olduğunu düşünüyorum. Bu cevabı yazmadan önce, JackTravis'in ayarının hem masaüstümdeki Logitech M510'um hem de dizüstü bilgisayarımdaki bazı eski kablolu fare için en iyi ayar olduğuna karar vermeden önce ayarları kullanmaya çalıştım xsetve xinputbir süre bu ayarları kullandım xinput ConstantDeceleration 3.

1. Fareleri Listele

$ 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)]
...

Farem şuydu Logitech M510, id=10bu yüzden bunu bu örnekte kullanacağım. Fareniz ne denirse onu değiştirmeniz gerekecektir . Şimdi, xinput set-propfareniz tam istediğiniz gibi hareket edene kadar çeşitli ayarları denemek için kullanın. 10Aşağıdaki tekabül etmesidir id=10sistemimde benim fare için. Muhtemelen bunu değiştirmek zorunda kalacaksın.

2. Ayarlarınızı Geçici Olarak Değiştirin

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

Başka hangi ayarların cihazınızı etkilediğini merak ediyorsanız

$ xinput --list-props 10

Ayarları gerçekten düzelttikten sonra ayarları silmek için tek yapmam gereken fareyi çıkarmak ve yeniden takmaktı.

3. Yeni Ayarı Kalıcı Olarak Kaydetme

Yeni bir dosya ekleyerek: Eğer 3 ConstantDeceleration gibi, o zaman bir xorg.conf dosyasını yeni Ubuntu 16.04 yolu eklemeniz gerekirse /usr/share/X11/xorg.conf.d/ Değişikliğin isteyeceksiniz Logitech M510ve logitech-m510farenizi maç için dosya adında. 60-Dosya adının başında, bu dosyaların yüklendiği öncelik olduğunu düşünüyorum . Aşağıdaki tek satırlık kabuk komutu, machineSetup.shDropbox'ta dosyama koyduğum komuttur, böylece yeni bir makineyi yeni bir kurulumdan birkaç dakika sonra tam olarak istediğim şekilde özelleştirebilirim:

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"

VEYA , bunu GUI yoluyla yapmak istiyorsanız, bir düzenleyiciyi root olarak açın, sonra aşağıdakileri yapıştırın ve düzenleyin./usr/share/X11/xorg.conf.d/60-<whatever>.conf

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

4. Yeniden başlat

Bu kadar. Sadece yeniden başlatın ve yeni ayarların geçerli olduğunu doğrulayın.


1
Maalesef aşağıdakileri alıyorum: property 'Device Accel Constant Deceleration' doesn't exist, you need to specify its type and format2. adımda komutu denediğimde (cihaz kimliğimle).
tambre

@ tambre benim tahminim, 2. adımı yaptığınızda 1. adımda tanımlanan doğru sayısal kimliği kullanmadığınızdır. Bu durumda değilse, o zaman muhtemelen size yardımcı olacak kadar bilgim olmayacak.
GlenPeterson

1
Özellikleri listeledikten sonra Device Accel Constant Decelerationorada yok. Sürücü olarak libinput kullanıyor gibi görünüyor, bu yüzden libinput Accel Speedgeçerli değerleri -1 olan 1'in değerini değiştirmek zorunda kaldım .
tambre

1
Bu benim için çalıştı, ancak farem (bir "Razer Razer DeathAdder 2013") Virtual core pointer(iki kez) ve Virtual core keyboard(bir kez) altında birden çok kez ortaya çıktı . Sadece pointercihazlar vardı Device Accel Constant Deceleration, bu yüzden test ederken bu cihazlardan birini seçtiğinizden emin olmak zorundaydım xinput. xorg.conf.dDosya hala mükemmel çalıştı.
Alex

2

Geç cevap, ancak bunun göndermeye değer olduğunu düşünüyorum:

Çünkü biz burada oyun faresinden bahsediyoruz. Daha da iyisi, fare ivmesini tamamen kapatmak (FPS oyuncuları vb. İçin faydalıdır). Herhangi bir fare ivmesini hesaplamak için kullanmayarak ve daha doğru okumalar yapma olasılığı olan bazı CPU çevrimlerini kaydedin (bağımlı veya fare donanım sensöründe yerleşik ekstrapolasyon vardır).

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

veya

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

Kaynak


Ben bu olsun: X Error of failed request: BadValue (integer parameter out of range for operation).
MasterOfBinary

harika bu harika oldu teşekkür ederim. Kingsis Çevre Birimlerim Evoluent VerticalMouse 3 ile ilgili sorunlar yaşıyorum. Farenin altında ve en yüksek DPI ayarlarında bir DPI ayarı var - en düşük hassasiyet ayarları bile çok yüksek.
anon58192932 20:17

2

Glen'in cevabında ufak bir değişiklik, bu benim Logitech farem için işe yarıyor ve "yavaşlığı" iki katına çıkarıyor.

~ / .Profile parametresini ekleyin (yorumda belirtildiği gibi) (veya .bashrc ancak daha sonra değişikliğin gerçekleşmesi için bir terminal başlatmanız gerekir)

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
Bence bu satırları .profileyerine sonuna eklemek daha iyidir .bashrc. .profilesadece etkileşimli oturum açma kabukları tarafından çalıştırılır, bu arada .bashrcbir bashkabuk her başlatıldığında çalıştırılır. Daha fazla bilgi için bu cevaba bakınız .
Chus,

.bash_aliasesStandart ubuntu .bashrcdosyası onu doğru yüklediğinden teknik olarak çalışmak da işe yarıyor mu?
anon58192932 20:17

1

PS2 portunu kullanırsanız, fare hareketi aynı fare çözünürlüğü için çok daha yavaştır.

Fareniz için bir USB - PS2 dönüştürücü kullanmayı deneyin ve fareyi PS2 portuna yerleştirin.

Düzenle:

xorg.confÇalışma çözümünü buldum :

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

1 duyarlılığı varsayılan ve 0,2 duyarlılığı beş kat azalıyorsa.


Bu yaratıcı bir fikir. Sanırım evde bir çeviricim var, yarın deneyeceğim.
Malabarba

Çalışan bir xorg.conf çözümü buldum. Cevap düzenlendi.
iugamarian

1
Bu olsa da, dizüstü bilgisayarlarda işe yaramaz.
Daniel Silva

Nerede xorg.conf?
Yeşil,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.