Comment réparer la vitesse de défilement de la souris Microsoft sur Ubuntu


11

Au cas où quelqu'un aurait le même problème que moi.

Lorsque je passe de Windows à Ubuntu (en double démarrage), ma molette de défilement de souris sans fil Microsoft devient folle! C'est totalement trop sensible.


2
Vous devez le faire comme une question et une réponse. stackoverflow.blog/2011/07/01/…
Terrance

Cela fonctionne pour moi, sourceforge.net/projects/resetmsmice , le problème de vitesse ne se produit que si vous effectuez un double démarrage de Windows vers Ubuntu.
Ted Feng

Réponses:


10

Ouvrez une invite

Listez vos appareils, faites attention à l'identifiant de l'appareil que vous souhaitez réparer, s'il y en a 2, c'est bon.

$ xinput list

Le mien avait 9 et 10 ans

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Microsoft Microsoft® 2.4GHz Transceiver v8.0  id=9    [slave  pointer  (2)]
⎜   ↳ Microsoft Microsoft® 2.4GHz Transceiver v8.0  id=10   [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)]
    ↳ Power Button                              id=7    [slave  keyboard (3)]
    ↳ Microsoft Microsoft® 2.4GHz Transceiver v8.0  id=8    [slave  keyboard (3)]

Maintenant fais ça, xétant ton id

$ xinput list-props x | grep 'Scrolling Distance'
Evdev Scrolling Distance (255): 1, 1, 1

Enfin, l'astuce consiste à trouver vos valeurs idéales, les miennes étaient 10, 10, 10

$ xinput set-prop x 'Evdev Scrolling Distance' 10, 10, 10

Pour définir définitivement le changement ( source ):

Un fichier caché dans votre répertoire est ".profile" (Ctrl + H pour voir les fichiers cachés) Double-cliquez dessus et ouvrez-le. Copiez collez la commande précédente à la fin. C'est ça!

PS pour appliquer la même commande à tous les utilisateurs, vous pouvez modifier le fichier / etc / profile (pas un fichier caché).

Vous êtes maintenant prêt à partir!


C'est parfait! Je l'ai +1. Il semble que tous les systèmes ne soient pas configurés pour les souris haute résolution. Au moins selon Microsoft - support.microsoft.com/en-us/help/303091/… . Mes paramètres étaient 8.
Royi

Cela fonctionne également sur Linux Mint 18.2 (Sonya).
Royi

Des idées pour Ubuntu 17, maintenant sur Wayland?
Dogweather

5
Cela ne fonctionne pas avec moi car je n'ai pas de "distance de défilement" dans les paramètres de ma souris.
smartmouse

J'utilise un micro-soft tout en un clavier avec un touchpad. Le pavé tactile n'a pas non plus de "distance de défilement"
ablmf

3

C'est un hack, mais débrancher / rebrancher l'émetteur-récepteur USB permet à Ubuntu de régler correctement la résolution et vous obtenez une vitesse de défilement très raisonnable. J'utilise cette astuce sur chaque version d'Ubuntu depuis quelques années. Je redémarre rarement ma machine, c'est donc la solution la plus simple pour moi :)

Peut-être que quelqu'un peut expliquer pourquoi cela fonctionne.



Je l'ai compris mais depuis que je redémarre le mien tout le temps et que le dongle est dans un mauvais endroit, je préfère le régler par logiciel
João Victor Zanatta

D'accord. Ce n'est toujours pas très fluide pour mon clavier Microsoft tout en un. Mais c'est assez bon pour la navigation sur le Web. Merci.
ablmf

3

Une solution qui fonctionne pour moi pour le problème de vitesse de défilement de la souris sans fil:

L'ordre lors de l'activation des modules Linux est très important.

Ajoutez un fichier nommé /etc/modprobe.d/mshid.confcontenant:

install hid-generic /sbin/modprobe hid ; /sbin/modprobe usbhid ; /sbin/modprobe -i hid-generic ; true

Cela garantit le bon ordre de chargement et la vitesse de défilement est alors normale. C'est ce qui se passe en arrière-plan lorsque le système est allumé, lors du retrait et de l'ajout de l'émetteur-récepteur. Cela fonctionne dans d'autres distributions qu'Ubuntu. Un redémarrage est nécessaire pour que cela fonctionne.


THX. Cela a fonctionné pour moi.
kalan du

Cela a fonctionné pour moi aussi, et pas besoin de redémarrer!
Benjamin Barrois

Après avoir essayé beaucoup de choses, ce fut finalement la seule chose qui a fonctionné pour moi! (sur Mint 19)
ItalyPaleAle

0

Il y a un cas d'utilisation qui n'est pas couvert à 100% par les réponses précédentes, donc je voulais partager le script suivant que j'ai écrit qui emprunte à la solution acceptée ci-dessus. Je suis sûr qu'il existe des façons beaucoup plus élégantes de le faire, mais cela a fonctionné pour moi.

#!/bin/sh

while true
do
xinput set-prop `xinput list|grep Nano|grep pointer|awk '{ print $8 }'|tr -d 'id='|sed -n 2p` 'Evdev Scrolling Distance' 10, 10, 10
sleep 5
done

Le script implémentera la solution xinput une fois toutes les 5 secondes, à la recherche de la deuxième entrée de pointeur (c'est celle que j'ai trouvée qui contrôlait toujours la vitesse de défilement). J'avais besoin d'utiliser cette commande car le numéro de propriété n'était pas toujours le même - mais c'était toujours le deuxième de la liste.

Cas d'utilisation: si vous utilisez un commutateur USB pour contrôler plusieurs ordinateurs, dont au moins un est Linux et l'un est Windows - lorsque vous passez de Linux à Windows à Linux, le changement de vitesse de défilement ne persiste pas (même si vous utilisez la solution xinput, .profile ou modprobe).

J'ai également trouvé la solution .profile problématique en ce sens que si vous retirez l'émetteur-récepteur et le remettez en place, puis redémarrez, la vitesse de défilement sera très lente car elle prendra la vitesse de défilement appropriée et la redimensionnera en fonction de ce qui se trouve dans votre profil.

Le script que j'ai partagé ci-dessus peut être exécuté via nohup chaque fois que vous utilisez le commutateur USB et tué quand vous ne l'êtes pas. Encore une fois - pas élégant, mais son faible impact et fonctionne à 100%.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.