web-dev-qa-db-fra.com

Comment puis-je définir la sensibilité de la souris, pas seulement l'accélération de la souris?

Je ne trouve pas un seul environnement de bureau prenant en charge la configuration de l'accélération et de la sensibilité de la souris. Je ne veux pas d'accélération de la souris, mais je veux augmenter la vitesse de ma souris. Cela signifie que si je déplace la souris à la même distance, le pointeur se déplacera à la même distance à chaque fois, non importe à quelle vitesse je déplace la souris.

KDE me permettra de régler l'accélération de la souris sur 1x, mais la souris se déplace alors trop lentement, et je ne sais pas comment augmenter la vitesse. Je suis prêt à accepter une solution CLI, mais je n'ai pu obtenir que xinput pour modifier l'accélération. Je ne me souviens pas non plus d'avoir eu beaucoup de chance avec xset.

43
David Gay

Forcez simplement le pointeur à ignorer les pixels, voici comment:

Liste des périphériques d'entrée en premier:

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

Dans l'exemple, nous voyons que l'ID de la souris est 10. Ensuite, listez ses propriétés:

$ xinput list-props 10
Device 'PixArt USB Optical Mouse':
        Device Enabled (140):   1
        Coordinate Transformation Matrix (142): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
        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

Nous voulons la "matrice de transformation coordonnée", rappelez-vous son №142.

En modifiant cette propriété, nous pouvons augmenter la vitesse du pointeur. Il s'agit d'une matrice de transformation, utilisée pour calculer un mouvement de pointeur . Depuis le lien:

Par défaut, le CTM pour chaque périphérique d'entrée dans X est la matrice d'identité. Par exemple, disons que vous touchez un écran tactile au point (400, 197) sur l'écran:

⎡ 1 0 0 ⎤   ⎡ 400 ⎤   ⎡ 400 ⎤
⎜ 0 1 0 ⎥ · ⎜ 197 ⎥ = ⎜ 197 ⎥
⎣ 0 0 1 ⎦   ⎣  1  ⎦   ⎣  1  ⎦

Les coordonnées X et Y de l'événement de périphérique sont entrées dans la deuxième matrice du calcul. Le résultat du calcul est l'endroit où les coordonnées X et Y de l'événement sont mappées à l'écran. Comme illustré, la matrice d'identité mappe les coordonnées de l'appareil aux coordonnées de l'écran sans aucun changement.

Donc, nous voulons augmenter les valeurs selon x et y, augmentant ainsi la vitesse du pointeur. Un exemple de mon PC:

$ xinput set-prop 10 142 2.400000, 0.000000, 0.000000, 0.000000, 2.400000, 0.000000, 0.000000, 0.000000, 1.000000

C'est xinput set-prop <device-id> <property-number> <property-values>. Jouez un peu avec cela jusqu'à ce que vous trouviez celui qui vous convient. Remarque: ne modifiez pas la dernière valeur de la matrice. C'était mon erreur quand je l'ai essayé de trouver du travail - dans ce cas, vous ne verrez aucune différence.

Remerciements: je suis reconnaissant à Simon Thum de la liste de diffusion xorg, c'est lui qui a donné un indice sur la matrice.

[~ # ~] upd [~ # ~] : remarque, certains jeux Windows fonctionnant avec Wine peuvent avoir un comportement de pointeur étrange (par exemple remarqué , que l'objectif de l'ancien Counter Strike 1.6 diminue, jusqu'à ce qu'il fixe le sol, peu importe comment vous déplacez la souris), dans ce cas, réinitialisez simplement x et y de CTM à 1 avant de lancer le jeu.

32
Hi-Angel

Ce qui suit a été copié mot pour mot d'une réponse qui @ Luke publiée sur Ask Ubuntu. Je le poste en tant que réponse wiki communautaire afin que les informations puissent également être sur ce site.


KDE n'a pas encore intégré cela dans son centre de contrôle, mais vous pouvez utiliser xinput depuis la ligne de commande. Première exécution xinput list pour trouver le numéro d'appareil de votre souris:

$ xinput list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=10   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=9    [slave  keyboard (3)]

Sur mon ordinateur portable, l'ID d'appareil que je veux est 10 (SynPS/2 Synaptics TouchPad). Sur votre système, vous devrez décider quel appareil est le bon. Ensuite, exécutez xinput list-props <your device id> pour voir les paramètres actuels de cet appareil:

$ xinput list-props 10
Device 'SynPS/2 Synaptics TouchPad':
    Device Enabled (144):   1
    Device Accel Profile (266):     1
    Device Accel Constant Deceleration (267):       2.500000
    Device Accel Adaptive Deceleration (268):       1.000000
    Device Accel Velocity Scaling (269):    12.500000
  [ many more settings omitted ]

La propriété qui vous intéresse est "Device Accel Constant Deceleration (267)". Pour ralentir votre souris, la valeur doit être augmentée en exécutant xinput set-prop <your device id> <property id> <value>:

$ xinput set-prop 10 267 5.0

Dans cet exemple, la valeur est augmentée de 2,5 à 5,0 et la souris se déplace à mi-vitesse.


Une explication des propriétés peut être trouvée sur X.org .

Si l'on utilise cela dans des scripts, l'utilisation de noms complets peut être utile car l'id, etc. peut changer. Par exemple:

xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Accel Constant Deceleration" 1
18
terdon

Si vous utilisez Xorg.conf pour configurer votre serveur X, vous pouvez l'utiliser pour définir l'accélération ou la décélération. Ajoutez simplement quelque chose à l'effet de:

Section "InputDevice"
    Identifier "name"
    Driver "evdev"
    Option "ConstantDeceleration" "multiplier"
EndSection

où multiplicateur est le nombre de fois que vous voulez que la souris aille plus lentement. 0,5 doublerait la vitesse, ou 2 la diviserait par deux. De manière équivalente, bien que plus complexe:

Section "InputDevice"
    Identifier "name"
    Driver "evdev"
    Option "TransformationMatrix" "a b c d e f g h i"
EndSection

où "a" à "i" sont la matrice de transformation, comme décrit dans d'autres réponses.
Source: page de manuel xorg.conf

6
Keeree Ocelot

J'utilise les paramètres suivants dans Mint 17.2 + Cinnamon, mais je pense que cela fonctionne également dans votre environnement.

xinput list # to get the id of your mouse
xinput list-props 10 # to list the properties of your mouse
xinput set-prop 10 'Device Accel Profile' -1 # turns off mouseaccel
xinput set-prop 10 'Device Accel Constant Deceleration' 1.5 # settings the sens

Je vous suggère de régler le DPI sur votre souris au maximum en premier (j'ai des boutons pour ça). Après cela, vous pouvez diminuer la décélération si vous avez toujours un sens trop faible.

Si tout va bien, vous pouvez le placer dans le fichier approprié de votre système, il chargera donc les paramètres au démarrage. Pour moi, ce fichier est le ~/.xinputrc.

Quelques informations sur ces propriétés xinput: http://www.x.org/wiki/Development/Documentation/PointerAcceleration/

(Remarque: j'adore Linux! <3 Après avoir "mis à niveau" mon système depuis XP en 2009. Depuis lors, j'avais mouseaccel sur Windows 7, peu importe quel accelfix j'ai essayé. Faites-moi confiance, j'ai essayé tous. Maintenant, après 6 ans, j'ai réussi à l'éteindre sur Linux Mint. :-) C'était un peu trop tard, j'ai mis fin à mon support de jeu au moins partiellement à cause de cela . Cela signifiait -20% de précision dans mon FPS. J'ai donc joué à 40% au lieu de 50-60% acc, ce qui est une compétence à faible med au lieu d'un high. Le jeu est mort maintenant, mais c'est toujours une version qui Je n'ai pas à supporter ce truc de souris en utilisant le système op.)

2
inf3rno

essayez LXInput, c'est ce que j'utilise, je n'ai pas réalisé ce que l'accélération et la sensibilité ont fait jusqu'à ce que je lise votre message ^ (alors merci!) il est dans le référentiel standard pour Ubuntu 16.04. Veuillez noter que je configure la souris DPI via Solaar, donc je ne sais pas si Solaar et LXInput interagissent d'une manière qui rendrait LXInput inutile en soi. edit désolé je pense que la "sensibilité" et "l'accélération" de LXInpu sont différentes de la vitesse. je pense que la "sensibilité" est la sensibilité de l'accélération. Désolé. cependant-> Solaar peut certainement être utilisé pour définir DPI/Vitesse pour les souris logitech, mais uniquement les dernières de github, pas celles des référentiels


LXInput est une application graphique pour l'environnement de bureau léger X11 (LXDE).

Il configure les paramètres du clavier et de la souris:

  • Délai et intervalle pour la répétition des caractères * Activer/désactiver les bips d'erreur de saisie au clavier * Permuter les boutons gauche et droit de la souris * Accélération et sensibilité de la souris

0.3.5-1 Ubuntu

406,5 kB

0
Franny

dans Ubuntu 16.04, la propriété de ma souris est:

Device Accel Constant Deceleration (279)

Il est défini sur 1.0 par défaut. Si vous augmentez la valeur, votre souris va ralentir.

0
Acarkan