Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
xinput [Le 12/12/2014, 17:32]
88.178.143.43 [Exemple de souris]
xinput [Le 11/09/2022, 10:33] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-**xinput** est intégré à Ubuntu et permet de gérer / configurer la souris (et peut etre plus -à compléter).+{{tag>Xenial accessibilité clavier souris}}
  
-Il fait parti du serveur X (à confirmer)+---- 
 +======Xinput gestionnaire de périphériques====== 
 + 
 +**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. 
 + 
 +===== Configuration des boutons de la souris =====
  
-====== Configuration des boutons de la souris ====== 
 Le principe est simple : Le principe est simple :
   * Récupérer l'​identification de la souris   * Récupérer l'​identification de la souris
Ligne 9: Ligne 13:
   * Sauver la configuration   * Sauver la configuration
  
-===== Récupérer l'​identification de la souris ​===== +==== Récupérer l'​identification de la souris ==== 
-Très simple, il suffit de lancer la commande +Pour récupérer l'​identifiant de sa souris, il suffit de lancer la commande ​suivante dans un [[:​terminal]] : ​ 
-  xinput list+ 
 +<​code>​xinput list | grep pointer</​code>​ 
 +Qui vous répondra quelquechose du genre : 
 +<code bash> 
 +⎡ 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)] 
 +...</​code>​
 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 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.
  
-===== Détecter et configurer les boutons ​===== +==== Détecter et configurer les boutons ==== 
-Dans cette partie, vous devez avoir récupérer ​l'​identifiant de votre souris que l'on appellera : <​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 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.
  
-Le tableau ci dessous corresponds à la configuration attendu de X11. Il vous suffit d'​assigner les boutons en fonction de votre souris. +^Position^Nom du bouton^
- +
-|Position|Nom du bouton|+
 |P1 |Left click| |P1 |Left click|
 |P2 |Middle click| |P2 |Middle click|
Ligne 29: Ligne 40:
 |P6 |Wheel left| |P6 |Wheel left|
 |P7 |Wheel right| |P7 |Wheel right|
-|P8 |Thumb1| +|P8 |Thumb1 ​(back) ​
-|P9 |Thumb2|+|P9 |Thumb2 ​(forward)|
 |P10 |ExtBt7| |P10 |ExtBt7|
 |P11 |ExtBt8 | |P11 |ExtBt8 |
  
-Entrer maintenant la commande suivante et appuyer sur les boutons de votre souris pour connaître leur numéro actuel : +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"​ +<code bash>xinput test <​identifiant>​ | grep "​button press"</​code>​ 
-Pour arreter ​le test des boutons tapez au clavier : control ​+ c+Pour arrêter ​le test des boutons tapez au clavier : CTRL + c
  
 Pour finir entrer la commande suivante pour reconfigurer votre souris : Pour finir entrer la commande suivante pour reconfigurer votre souris :
-  ​xinput set-button-map <​identifiant>​ 1 P1 P2 P3 P4 P5 ...+<code bash>xinput set-button-map <​identifiant>​ 1 P1 P2 P3 P4 P5 ...</​code>​
 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** 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:+Exemple simple :
   * L'​identifiant = 9   * L'​identifiant = 9
   * Clic gauche = 1   * Clic gauche = 1
Ligne 48: Ligne 59:
   * Clic droit = 2   * Clic droit = 2
  
-Alors la commande est : +Alors la commande est : ​<code bash>xinput set-button-map 9 1 3 2</​code>​ 
-  ​xinput set-button-map 9 1 3 2+ 
 +==== Modifier la vitesse du double clic ==== 
 + 
 +<note important>​Si votre souris produit des doubles-clics alors que vous souhaitiez de simples clics, même après avoir ajusté l'​intervalle dans les réglages, il se peut que votre souris soit défectueuse. Essayez de brancher une autre souris pour voir si elle fonctionne de la même façon. Vous pouvez aussi essayer de brancher la souris problématique sur un autre ordinateur pour voir si le problème se reproduit. 
 + 
 +À 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)</​note>​ 
 + 
 +Après avoir récupéré l'​identifiant de la souris, il suffit de lancer dans un [[:​terminal]] la [[:​commande_shell|commande]] suivante : 
 +<​code>​xinput list-props '[ID de votre souris]'</​code>​ 
 +remplacerez **[ID de votre souris]** par l'ID trouvé à l'​étape précédente. 
 + 
 +Exemple pour une souris **Logitech Gaming Mouse G500** 
 + 
 +<​code>​$ 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)]</​code>​ 
 + 
 +FIXME: ici xinput list seul alors qu'​avant xinput list-props '​ID'​. Peut-être revoir la formulation d'​intro de cette section. 
 + 
 +<note help>Je ne saurais expliquer pourquoi la souris est référencée deux fois</​note>​ 
 + 
 +8 et 9 sont les 2 tag ID de la souris. (En choisir un) 
 + 
 +<​note>​les paramètres sont identiques pour les deux ID</​note>​ 
 + 
 +La [[:​commande_shell|commande]] se présente alors comme ceci : 
 + 
 +<​code>​xinput list-props 9</​code> ​  
 + 
 +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** 
 + 
 +<​code>​ 
 +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 
 +  ...</​code>​ 
 + 
 +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_shell|commande]] suivante : 
 + 
 +<​code>​xinput -xinput set-prop '[ID de votre souris]'​ '[N° de l'​option]'​ [valeur]</​code>​ 
 + 
 +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_shell|commande]] se présente alors comme ceci : 
 + 
 +<​code>​xinput set-prop 9 282 1.5</​code>​ 
 +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_shell|commande]] suivante : 
 + 
 +<​code>​xinput list-props 9</​code> ​  
 + 
 +__Résultat:​__ 
 + 
 +<​code>​ 
 +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 
 +  ... 
 +</​code> ​  
 + 
 +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_shell|commande]] __à chaque démarrage du système.__ 
 + 
 +Dans votre **//Dossier Personnel//​**,​ [[:​tutoriel:​comment_modifier_un_fichier|ouvrez]] le [[:​fichier_cache|fichier caché]] **.profile** pour y recopier à la fin du fichier la commande.\\ 
 +Pour notre exemple ici: 
 +<​file>​xinput --set-prop 9 "​Device Accel Constant Deceleration"​ 1.5</​file>​ 
 +FIXME possible de mettre la même commande ''​xinput set-prop 9 282 1.5''​ ? 
 + 
 +Pour appliquer cette [[:​commande_shell|commande]] à tous les utilisateurs,​ faites de même en [[:​tutoriel:​comment_modifier_un_fichier|éditant]] avec les [[:​sudo|droits d'​administration]] le fichier **/​etc/​profile**. 
 + 
 + 
 +**__Vous pouvez aussi utiliser un script.__** 
 + 
 +<file bash> 
 +#​!/​bin/​bash 
 +xinput --set-prop 9 "​Device Accel Constant Deceleration"​ 1.5 
 +exit 0;</​file>​ 
 + 
 +Enregistrer sous le nom "​**Device Accel Constant Deceleration.sh**"​ rajouter **.sh** à la fin du nom de fichier n'est en rien obligatoire. 
 + 
 +<note warning>​Faites tout de même attention dans l'​utilisation de scripts. Leur utilisation sans connaissances de votre part pourrait vous faire perdre de précieuses données.</​note>​ 
 + 
 +Puis exécutez la [[:​commande_shell|commande]]:​ 
 + 
 +<​code>​gnome-session-properties</​code>​ 
 + 
 +Si n'est pas présent, vous pouvez [[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​gnome-session-bin]]** 
 + 
 +Et ajoutez le script à la liste. 
 + 
 +**N'​oubliez pas de rendre le script [[:​droits|exécutable]]**  
 + 
 +__**Autre méthode.**__ 
 + 
 +Avec les [[:​sudo|droits d'​administration]],​ [[:​tutoriel:​comment_modifier_un_fichier|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:​ 
 +<file bash> 
 +#! / Bin / sh 
 +xinput --set-prop 8 "​Device Accel Constant Deceleration"​ 1.5 
 +xinput --set-prop 9 "​Device Accel Constant Deceleration"​ 1.5</​file>​ 
 + 
 +Ajuster la valeur en fonction de la sensibilité que vous recherchez, ensuite, rendez le fichier [[:​droits|exécutable]] 
 + 
 +Enfin, faites-le exécuter avec les [[:​services]] au démarrage:​ 
 + 
 +<​code>​sudo update-rc.d mousefix valeurs par défaut 99</​code>​ 
 + 
 +<​note>​La page de manuel de **xorg.conf** inclut des options concernant l'​accélération et la décélération de la souris.\\ 
 +Par exemple pour ralentir la souris ajout d'un facteur 2 à "//​ConstantDeceleration//"​ :<​file>​ 
 +Option "​AccelerationProfile"​ "​-1"​ 
 +Option "​ConstantDeceleration"​ "​2.0"</​file></​note>​
  
 +==== Sauver la configuration ====
 +Pour que votre configuration soit enregistrée à chaque démarrage, il vous faudra modifier [[:​xorg|xorg.conf]] comme expliqué sur la page [[:​souris#​En modifiant xorg.conf|souris]]. Ou encore utiliser une [[:​souris#​Avec une application tiers|application tiers]].
  
-===== Sauver la configuration ===== +<note important>​Sur les dernières versions, plutôt qu'un seul fichier **xorg.conf*contenant toutes ​les sectionschacune est désormais dispatchée en multiples sous-fichierssoit dans **/etc/X11/xorg.conf.d/** soit dans le dossier **/usr/share/​X11/​xorg.conf.d/** 
-  ​La technique brouillon consiste à entrer la commande précédente dans les programmes aux démarrages. Cela dépend donc de votre gestionnaire de fenetre (KDECinnammonLXDE ,...) +</​note>​
-  ​La technique propre consiste à modifier xorg en s'​inspirant de [[http://www.mrericsir.com/blog/technology/using-an-evoluent-verticalmouse-4-on-linux|cette page]] +
-===== Exemple de souris ===== +
-Pour vous simplifier la vie, vous pouvez entrer ici la configuration de votre souris afin d'​aider les autres internautes. +
-Classement par marque (par ordre alphabétique) puis par modèle+
-<note tip>Ca serait bien si qqn pouvait transformer cette liste en tableau avec les colonnes : marque, modèle, mapping, notes</​note>​+
  
-  * Evoluent : +===== Interface graphique à Xinput ===== 
-    ​* ​... +Vous pourrez trouvez une interface graphique à Xinput en téléchargeant le .zip à cette [[https://github.com/​Max-E/​xinput-ui/​archive/​master.zip|adresse]]
-  * Logitech ​: +[[:archivage|Décompressez]] l'​archive,​ puis exécutez le fichier ''​xinput-ui.py''​ contenu dans le dossier **xinput-ui-master**.
-    * ... +
-  * Microsoft ​: +
-    ​...+
  
-====== Notes ====== +=====Voir aussi===== 
-Une fois tous les boutons reconnus et remappé, il peut etre interressant ​d'utiliser ​[[imwheel|IMWheel]] pour mapper les boutons supplémentaires ​sur des raccourcis clavier+  * [[:​mpx|Utilisation avancée ​d'xinput]], 
 +  * [[https://​linux.die.net/​man/​1/​xinput|les commandes xinput]]
 +  * [[http://​xorg.freedesktop.org/​|Site Officiel]] de X.org. 
 +  * Exemple de configuration ​sur [[http://​www.mrericsir.com/​blog/​technology/​using-an-evoluent-verticalmouse-4-on-linux|cette page]], 
 +  * La page [[souris]].
  
 +----
 +//​Contributeur : [[:​utilisateurs:​Wullfk]]
  • xinput.1418401974.txt.gz
  • Dernière modification: Le 12/12/2014, 17:32
  • par 88.178.143.43