xinput est un outil intégré à Ubuntu qui permet de gérer et de configurer les périphériques d'entrée comme les souris et les claviers.
Le principe est simple :
Pour récupérer l'identifiant de sa souris, il suffit de lancer la commande suivante dans un terminal :
xinput list | grep pointer
Qui vous répondra quelquechose du genre :
⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ HP Laser Mobile Mouse id=10 [slave pointer (2)] ⎜ ↳ SynPS/2 Synaptics TouchPad id=13 [slave pointer (2)] ...
Dans la liste vous devez reconnaître votre souris par le nom du constructeur et son modèle. Repérer ensuite l'identifiant : id=X ou X est l'identifiant.
Dans cette partie, vous devez avoir récupéré l'identifiant de votre souris que l'on appellera : <identifiant>
Le principe est d'acquérir les boutons avec la commande test
et de les réassigner en fonction de ce que X11 attend.
Le tableau ci dessous corresponds à la configuration attendue de X11. Il vous suffit d'assigner les boutons en fonction de votre souris.
Position | Nom du bouton |
---|---|
P1 | Left click |
P2 | Middle click |
P3 | Right click |
P4 | Wheel up |
P5 | Wheel down |
P6 | Wheel left |
P7 | Wheel right |
P8 | Thumb1 (back) |
P9 | Thumb2 (forward) |
P10 | ExtBt7 |
P11 | ExtBt8 |
Entrer maintenant la commande suivante et appuyer sur les boutons de votre souris pour connaître leur numéro actuel :
xinput test <identifiant> | grep "button press"
Pour arrêter le test des boutons tapez au clavier : CTRL + c
Pour finir entrer la commande suivante pour reconfigurer votre souris :
xinput set-button-map <identifiant> 1 P1 P2 P3 P4 P5 ...
avec P1 P2 P3 … les valeurs du tableau précédent correspondant avec les numéros de bouton de votre souris avec la commande précédente xinput test
Exemple simple :
Alors la commande est :
xinput set-button-map 9 1 3 2
À défaut d'un problème purement matériel, il peut être nécessaire de régler la vitesse du double-clic, surtout lorsque celui ci est trop rapide (phénomène du double-clic intempestif alors que l'on a effectué qu'un seul clic)
Comme indiqué en amont, parfois la possibilité de réglage disponible dans Paramètres Système » Souris & Pavé tactile ne résout pas le problème (même en mettant au minimum)
Après avoir récupéré l'identifiant de la souris, il suffit de lancer dans un terminal la commande suivante :
xinput list-props '[ID de votre souris]'
remplacerez [ID de votre souris] par l'ID trouvé à l'étape précédente.
Exemple pour une souris Logitech Gaming Mouse G500
$ xinput list ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ Logitech G500 id=8 [slave pointer (2)] ⎜ ↳ Logitech G500 id=9 [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)] ↳ USB Keyboard id=10 [slave keyboard (3)] ↳ USB Keyboard id=11 [slave keyboard (3)] ↳ Eee PC WMI hotkeys id=12 [slave keyboard (3)]
: ici xinput list seul alors qu'avant xinput list-props 'ID'. Peut-être revoir la formulation d'intro de cette section.
8 et 9 sont les 2 tag ID de la souris. (En choisir un)
La commande se présente alors comme ceci :
xinput list-props 9
Cette commande fait apparaître la liste des options qui s'appliquent à votre souris. Recherchez le paramètre évoquant la vitesse de décélération de la souris : "Device Accel Constant Deceleration"
Device Accel Constant Deceleration est un des paramètres de la «sensibilité». Il définit un facteur avec lequel on veut ralentir le pointeur vers le bas. Une valeur plus élevée va donc ralentir davantage; par exemple. 2 réduira de moitié la vitesse du pointeur. Essayez de le définir à 10 pour voir exactement ce qu'il fait si ce n'est pas clair.
Exemple pour la Logitech G500
Device 'Logitech G500': Device Enabled (151): 1 Coordinate Transformation Matrix (153): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000 Device Accel Profile (281): 0 Device Accel Constant Deceleration (282): 1.000000 Device Accel Adaptive Deceleration (283): 1.000000 Device Accel Velocity Scaling (284): 10.000000 Device Product ID (270): 1133, 49256 Device Node (271): "/dev/input/event3" Evdev Axis Inversion (285): 0, 0 Evdev Axes Swap (287): 0 ...
La valeur par défaut pour "Device Accel Constant Deceleration" est 1.000000 (1.0) quel que soit l'ID choisi
À présent tapez la commande suivante :
xinput -xinput set-prop '[ID de votre souris]' '[N° de l'option]' [valeur]
remplacer [N° de l'option] par le numéro trouvé à l'étape précédente et [valeur] par un nombre. Cette commande attribue une nouvelle valeur à la vitesse de la souris (ou plus précisément à la décélération de la souris). Dans notre cas, on peut mettre une valeur supérieure (ex: 1.5) il sera nécessaire d'effectuer plusieurs essais pour trouver le réglage qui vous convient.
La commande se présente alors comme ceci :
xinput set-prop 9 282 1.5
Il n'y a pas de retour particulier à attendre, vous pouvez tout de même vérifier que la nouvelle valeur a bien été appliquée en retapant la commande suivante :
xinput list-props 9
Résultat:
Device 'Logitech G500': Device Enabled (151): 1 Coordinate Transformation Matrix (153): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000 Device Accel Profile (281): 0 Device Accel Constant Deceleration (282): 1.500000 ...
Normalement en fonction du réglage effectué la souris doit retrouver une vitesse du double-clic (Décélération) normale.
Il faut maintenant automatiser la commande à chaque démarrage du système.
Dans votre Dossier Personnel, ouvrez le fichier caché .profile pour y recopier à la fin du fichier la commande.
Pour notre exemple ici:
xinput --set-prop 9 "Device Accel Constant Deceleration" 1.5
possible de mettre la même commande xinput set-prop 9 282 1.5
?
Pour appliquer cette commande à tous les utilisateurs, faites de même en éditant avec les droits d'administration le fichier /etc/profile.
Vous pouvez aussi utiliser un script.
#!/bin/bash xinput --set-prop 9 "Device Accel Constant Deceleration" 1.5 exit 0;
Enregistrer sous le nom "Device Accel Constant Deceleration.sh" rajouter .sh à la fin du nom de fichier n'est en rien obligatoire.
Puis exécutez la commande:
gnome-session-properties
Si n'est pas présent, vous pouvez installer le paquet gnome-session-bin
Et ajoutez le script à la liste.
N'oubliez pas de rendre le script exécutable
Autre méthode.
Avec les droits d'administration, ouvrez, ou créez-le s'il n'existe pas, le fichier /etc/init.d/mousefix
Mettez ce qui suit dans ce fichier et enregistrez-le:
#! / Bin / sh xinput --set-prop 8 "Device Accel Constant Deceleration" 1.5 xinput --set-prop 9 "Device Accel Constant Deceleration" 1.5
Ajuster la valeur en fonction de la sensibilité que vous recherchez, ensuite, rendez le fichier exécutable
Enfin, faites-le exécuter avec les services au démarrage:
sudo update-rc.d mousefix valeurs par défaut 99
Option "AccelerationProfile" "-1" Option "ConstantDeceleration" "2.0"
Pour que votre configuration soit enregistrée à chaque démarrage, il vous faudra modifier xorg.conf comme expliqué sur la page souris. Ou encore utiliser une application tiers.
Vous pourrez trouvez une interface graphique à Xinput en téléchargeant le .zip à cette adresse.
Décompressez l'archive, puis exécutez le fichier xinput-ui.py
contenu dans le dossier xinput-ui-master.
Contributeur : Wullfk