Configurer le pavé tactile d'un ordinateur portable
En règle générale votre système reconnaît par défaut votre pavé tactile (Touchpad). Mais il est possible d'en améliorer le support ou de configurer des actions insoupçonnées avec le ou les doigts. Il existe pour cela plusieurs outils de configuration.
Connaître son pavé tactile
Avant de modifier ou d'installer un pilote inapproprié, il vaut mieux vérifier quel constructeur et quel modèle équipent votre machine:
egrep -i 'synap|alps|etps' /proc/bus/input/devices
Pour plus de détails, tapez:
xinput list "$(egrep -i 'synap|alps|etps' /proc/bus/input/devices |cut -d'"' -f2)"
Outils graphiques par défaut
Voici quelques outils graphiques permettant de configurer le pilote Synaptics™. Synaptics™ est un des principaux fabricants de pavés tactiles, à ne pas confondre avec le gestionnaire de paquets Synaptic. Si le Pavé tactile n'est pas présent dans ce qui suit ou si vous souhaitez plus d'options, utilisez l'un des Outils avancés ci-dessous.
Sous Unity
Vous trouverez quelques réglages simples avant d'opter pour des outils plus avancés. Il est possible que cette étape soit suffisante pour vos besoins. Allez dans Paramètres Système → Souris & pavé tactile.
Les options qui s'offrent à vous sont :
- Possibilité de désactivation durant la frappe,
- Taper pour cliquer,
- Défilement à deux doigts,
- Défilement naturel, qui correspond au défilement des smartphones.
Si vous branchez une souris externe sur votre ordinateur portable, il peut être utile de désactiver le pavé tactile. Pour cela, consultez la rubrique ci-dessous traitant de la désactivation du pavé tactile. À noter que, sur certains portables, il existe la possibilité de désactiver et réactiver simplement le pavé tactile avec une combinaison de touches ou avec une touche dédiée au-dessus du pavé tactile.
Sous Xfce
Allez dans Le gestionnaire de paramètres Xfce, bouton Souris.
Sous Lxde
La gestion du pavé tactile sous Lubuntu est basique, vous pouvez y accéder via le menu Applications → Préférences → Clavier et souris.
Sous Kde
L'outi utilisé sous KDE s'appelle kde-touchpad installé par défaut. Il gère aussi la souris et le pavé tactile que les Trackpoints IBM.
Le réglage apparaît dans Configuration du système → Matériel → Périphériques d'entrée → Touchpad . Depuis quelques versions, ces réglages sont accessibles via une icône Synaptiks dans la boîte à miniature. Pour désactiver le pavé tactile lors de la frappe, cochez Automatically switch off touchpad on keyboard activity.
En ligne de commande
La configuration en ligne de commande offre plus de possibilités de réglages qu'avec les applications graphiques. Le pilote Synaptics est fourni par les paquets xserver-xorg-input-synaptics installé par défaut sous Ubuntu 16.04 Xenial et par xserver-xorg-input-libinput installé par défaut sous Ubuntu 18.04 Bionic.
Dans un terminal, entrez la commande suivante pour connaître l'id de votre pavé:
xinput list
Vous obtiendrez un résultat semblable à celui-ci:
⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ SynPS/2 Synaptics TouchPad id=12 [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)] ↳ Power Button id=8 [slave keyboard (3)] ↳ Sleep Button id=9 [slave keyboard (3)] ↳ Laptop_Integrated_Webcam_1.3M id=10 [slave keyboard (3)] ↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)] ↳ Dell WMI hotkeys id=13 [slave keyboard (3)]
Le pavé Apparaît ici avec l'id=12.
Pour le désactiver, la commande à utiliser est la suivante (en utilisant bien évidemment l'id correspondant à votre configuration):
xinput set-prop 12 "Device Enabled" 0
Utilisation de Synclient
Pour configurer Synaptics, on peut se servir de l'outil en ligne de commande Synclient fourni avec Synaptics. Il permet de voir à la volée les réactions du pavé tactile pour définir les options dont vous aurez besoin.
Il est possible que Synclient vous demande d'activer SHMConfig pour fonctionner.
- Pour afficher la configuration de Synaptics :
synclient -l
Le terminal vous répond:
Parameter settings: LeftEdge = 1200 RightEdge = 5800 ...
Pour observer les événements perçus par le pavé tactile, déterminer la surface couverte (intervalles de valeur x et y), le nombre de doigts présents et autres actions : ne fonctionne pas sous Bionic
synclient -m 100 time x y z f w l r u d m multi gl gm gr gdx gdy 0.000 5212 2853 1 1 4 0 0 0 0 0 00000000 0 0 0 0 0 0.728 2948 2425 68 1 4 0 0 0 0 0 00000000 0 0 0 0 0 ...
- Pour changer dynamiquement la valeur des paramètres de configuration de Synaptics et faire des tests:
synclient TopEdge=1200 LeftEdge=1200
Quelques définitions
Paramètre | Définition |
---|---|
LeftEdge | abscisse du bord gauche |
RightEdge | abscisse du bord droit |
TopEdge | ordonnée du bord supérieur |
BottomEdge | ordonnée du bord inférieur |
FingerLow | pression maximum en dessous de laquelle le driver suppose qu'on n’appuie plus sur le pavé tactile |
FingerHigh | pression minimum au dessus de laquelle le driver suppose qu'on appuie sur le pavé tactile |
MaxTapTime | temps maximum (en ms) en dessous duquel le driver interprète un tapotement sur le pavé tactile |
MaxTapMove | nombre de mouvements maximum en dessous duquel le driver interprète un tapotement sur le pavé tactile |
SingleTapTimeout | Temps après un tapotement pour le reconnaître comme une simple pression |
EmulateMidButtonTime | temps maximum (en ms) en dessous duquel le driver interprète un clic « bouton du milieu » |
VerScrollDelta | distance de déplacement minimum du doigt pour faire un défilement vertical |
HorizScrollDelta | distance de déplacement minimum du doigt pour faire un défilement horizontal |
MinSpeed | facteur de vitesse minimum pour le déplacement du curseur |
MaxSpeed | facteur de vitesse maximum pour le déplacement du curseur |
AccelFactor | facteur d'accélération pour le déplacement du curseur |
EdgeMotionMinSpeed | facteur de vitesse minimum pour le défilement |
EdgeMotionMaxSpeed | facteur de vitesse maximum pour le défilement |
TapButton1 | configure l'action liée au tapotement avec 1 doigt. 1-clic sur le bouton gauche, 2-molette ou 3-bouton droit |
TapButton2 | configure l'action liée au tapotement avec 2 doigts. 1-clic sur le bouton gauche, 2-molette ou 3-bouton droit |
TapButton3 | configure l'action liée au tapotement avec 3 doigts. 1-clic sur le bouton gauche, 2-molette ou 3-bouton droit |
UpDownScrolling | génère un événement équivalent à l’événement 4/5 d'une souris à roulette (active le défilement) |
CircularScrolling | active le défilement circulaire (en cas d’ascenseurs diagonaux) |
CircScrollDelta | distance de déplacement minimum du doigt pour faire un défilement circulaire |
CircScrollTrigger | région à partir de laquelle le défilement circulaire commence (de 0 à 8 en fonction de la région) |
Informations de slackware-fr.
Modifier le tapotement
- Pour affecter le bouton central de souris au tapotement avec 2 doigts
synclient TapButton2=2
- Pour affecter le bouton droit de souris au tapotement avec 3 doigts
synclient TapButton3=3
Désactiver le click droit (et gauche) en bas du touchpad
Temporairement
synclient RightButtonAreaLeft=0 synclient RightButtonAreaTop=0
Sauvegarder les modifications
Les modifications faites avec Synclient ne sont pas conservées au redémarrage. Vous pouvez intégrer les commandes dans un script de démarrage pour l'appliquer à tous les utilisateurs ou dans les applications au démarrage pour chaque session utilisateur.
Exemple : pour affecter le bouton central de souris au tapotement avec 2 doigts et le bouton droit de souris au tapotement avec 3 doigts, ajoutez la commande :
synclient TapButton3=3 TapButton2=2
Avec Ubuntu 16.04 (au moins), la méthode ci-dessus ne fonctionne pas. Il faut mettre :
sh -c "synclient TapButton3=3 TapButton2=2"
Appliquer les changements directement à toutes session utilisateur
Cette solution (vérifié sous ubuntu 16.04) consiste à désactiver le plugin de gnome-setting-deamon concernant les réglages de souris:
dconf write /org/gnome/settings-daemon/plugins/mouse/active false
puis créer le fichier /etc/X11/xorg.conf.d/50-synaptics.conf
sudo nano /etc/X11/xorg.conf.d/50-synaptics.conf
pour ajouter les lignes suivantes:
Section "InputClass" Identifier "touchpad catchall" Driver "synaptics" MatchIsTouchpad "on" MatchDevicePath "/dev/input/event*" Option "TapButton2" "2" Option "TapButton3" "3" EndSection
Émuler la molette
Repérez le nom de votre souris (touchpad, trackpoint, …) en exécutant cette commande :
xinput -list
Puis, créez un script emupave.sh
avec ce contenu (dans mon cas, j'agis sur "DualPoint Stick") :
- emupave.sh
#!/bin/bash xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation" 8 1 xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation Button" 8 3 xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation Timeout" 16 200 xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation Axes" 8 6 7 4 5
Rendez ce script exécutable.
Exécutez le pour tester son fonctionnement (ici, le clic droit maintenu permet de scroller en bougeant le trakpoint). Si cela fonctionne, ajouter-le dans les programmes lancés au démarrage.
Activer SHMConfig
Certains outils pour configurer le pavé tactile, comme synclient, pour qu'ils puissent fonctionner, ont besoin d'accéder à la mémoire partagée du pilote du pavé tactile synaptics. Ceci est réalisé en plaçant l'option SHMConfig à "True" (vrai) dans la configuration du serveur graphique.
Lorsque cette option est activée, les outils cités peuvent modifier la configuration de votre pavé tactile à la volée, sans avoir à redémarrer le serveur Xorg.
- Créer avec les droits d'administration le fichier /etc/X11/xorg.conf.d/50-synaptics.conf:
- Ajoutez la ligne
Option "SHMConfig" "true"
avant la ligne
EndSection
:Section "InputClass" Identifier "touchpad catchall" Driver "synaptics" MatchIsTouchpad "on" MatchDevicePath "/dev/input/event*" Option "SHMConfig" "true" EndSection
Redémarrez pour que les changements soient pris en compte.
Si les réglages que vous effectuez dans les fichiers de configuration de xorg (par exemple 50-synaptics) semblent ne pas avoir d'effet, essayez la démarche suivante :
- Ouvrez gconf-editor ;
- Allez sur la clef /apps/gnome_settings_daemon/plugins/pointing-device/ ;
- Décochez la case active ;
- Redémarrez afin que les changement soient pris en compte.
Cela aura pour effet de désactiver les réglages imposés par gnome-settings-daemon, rendant ainsi vos réglages manuels actifs. (Cette manipulation est inspirée de ce qui est décrit dans le Wiki d'Archlinux).
Activer/désactiver le pavé tactile
En ligne de commande
Prenons le cas d'un pavé tactile qui est désactivé. Pour l'activer :
synclient TouchpadOff=0
Pour désactiver le pavé tactile :
synclient TouchpadOff=1
Pour le désactiver uniquement lors de la frappe au clavier :
synclient TouchpadOff=2
Graphiquement
Souvent un raccourci clavier est prévu à cet effet sur la majorité des portables. Sinon il existe un applet qui permet de désactiver/réactiver rapidement le touchpad. Pour l'installer:
- Ajoutez à vos sources de logiciels le PPA ppa:atareao/atareao1),
- Enfin, désactivez le PPA par précaution.
Avec Gnome-Shell : ajouter l'extension "Touchpad Indicator".
Désactiver/activer avec un raccourci clavier
Si votre raccourci clavier (avec la touche fn par exemple) pour désactiver le pavé tactile ne fonctionne pas, ou bien si vous souhaitez tout simplement allouer un raccourci clavier à l'activation/désactivation de celui-ci, enregistrez avec les droits d'administration le script qui suit dans le dossier /usr/local/bin/touchpad:
- /usr/local/bin/touchpad
#!/bin/sh status=$(synclient -l | grep TouchpadOff | awk '{print $3}') if [ $status -eq 1 ];then status=0 else status=1 fi synclient TouchpadOff=$status exit
Rendez-le exécutable et allouez-lui un raccourci clavier en mettant dans le champs commande: touchpad
.
Désactiver définitivement
Si le pavé tactile est branché en interne comme un périphérique PS/2 (ancienne norme pour les prises des souris/clavier), vous pouvez bloquer le module au démarrage du système en rajoutant.
- Éditez avec les droits d'administration le fichier /etc/modprobe.d/blacklist.conf ;
- Ajoutez à la fin du fichier :
blacklist psmouse
Sur les portables Asus qui ne possèdent pas de fonction directe de désactivation du pavé tactile par la fonction fn, cette procédure est simple, efficace et permet de désactiver le pavé tactile sans désactiver la souris en USB.
Si vous ne branchez pas toujours votre souris USB, il est préférable de désactiver le pavé tactile manuellement (éventuellement par un lanceur) après démarrage par la commande :
xinput –set-prop "PS/2 Generic Mouse" "Device Enabled" 0
Ajouter des fonctionnalités de gestes
En utilisant Fusuma, vous pouvez ajouter des fonctionnalités avancées comme augmenter le volume en faisant glisser 3 ou 4 doigts, passer d'un bureau à un autre, etc.
Installer Fusuma
D'abord, vous devez appartenir au input group, si ce n'est déjà fait.
sudo gpasswd -a $USER input
Redémarrez la session pour que les changements prennent effet.
Ensuite, installez libinput-tools, xdotool, et enfin fusuma :
sudo apt-get install libinput-tools sudo apt-get install xdotool sudo gem install fusuma
Enfin, activez la réception des mouvements du trackpad :
gsettings set org.gnome.desktop.peripherals.touchpad send-events enabled
Configurer les gestes
Dans votre répertoire personnel, sous le dossier .config (activez les dossiers cachés avec Ctrl+H si vous ne les voyez pas), ajoutez un dossier fusuma puis créez-y le fichier config.yml.
Vous pouvez l'éditer pour configurer vos actions, d'après le modèle suivant :
swipe: 3: left: command: 'xdotool key alt+Right' right: command: 'xdotool key alt+Left' up: command: 'xdotool key super' interval: 0.8 down: command: 'xdotool key super' 4: left: command: 'xdotool key ctrl+alt+Down' right: command: 'xdotool key ctrl+alt+Up' up: command: 'xdotool key ctrl+alt+Down' down: command: 'xdotool key ctrl+alt+Up' pinch: in: command: 'xdotool key ctrl+plus' out: command: 'xdotool key ctrl+minus' threshold: swipe: 0.4 pinch: 0.4 interval: swipe: 0.8 pinch: 0.1
Les commandes swipe correspondent aux mouvements glissés, et pinch à pincé. Pour chaque mouvement, vous pouvez préciser le nombre de doigts associés (ici 3 ou 4), et la direction du mouvement (left, right, up, down). La ligne command précise l'action associée, qui sont ici des raccourcis clavier (alt+Right pour le retour arrière sur un navigateur, ctrl+alt+Down/Up pour changer de bureau virtuel, ctrl+plus/minus pour zoomer/dézoomer, etc…).
Vous pouvez faire correspondre à chaque mouvement un raccourci clavier, et vous pouvez ajouter des raccourcis clavier pour d'autres actions dans l'application Paramètres d'Ubuntu, sous Périphériques puis Raccourcis clavier. Les paramètres thresold et pinch indiquent respectivement le seuil de détection du mouvement et l'intervalle de temps entre deux mêmes mouvements consécutifs, en secondes. Ils peuvent être globaux (à la fin) ou particuliers à une action (sous la ligne command).
Vous pouvez tester vos raccourcis en tapant par exemple dans un terminal la commande
xdotool key super
Enfin, testez le résultat en lançant la commande
fusuma
Activer Fusuma
Pour fonctionner, Fusuma doit être relancé à chaque démarrage de votre ordinateur. Pour ce faire, ouvrez l'application Applications au démarrage, puis ajoutez une entrée Fusuma, comportant la commande fusuma. Redémarrez votre ordinateur pour tester le résultat !
Résolution des problèmes
Absence de bouton droit sur le touchpad avec Ubuntu 18.04
Certains PC portables d'entrée de gamme n'ont plus de bouton droit sur touchpad, après la mise à jour vers Ubuntu 18.04. Il s'agit de certains touchpad sans bouton, comme les Dell Inspiron série 5000.
installez le paquet gnome-tweaks.
Lancer "Ajustement de GNOME" , cliquer sur le menu "Clavier & souris" et dans la partie Émulation du clic de souris cochez Surface :
Le pavé tactile ne fonctionne pas
Pour régler ce souci, il suffit généralement d'ajouter au noyau le paramètre i8042.nopnp. Sur certains portables il est nécessaire de modifier des paramètres dans le bios. Par exemple désactiver le mode Advanced sur les Packard Bell.
Le pavé tactile ne fonctionne plus
Il arrive que le pavé tactile se bloque définitivement après avoir appuyé sur le « bouton blocage » du portable. Dans un premier temps appuyez de nouveau sur le « bouton blocage » du pavé tactile pour le réactiver. Si cela ne résout pas votre problème, y compris après avoir redémarré, le problème peut être lié à Gnome, au pilote ACPI ou au pilote du bus serie i8042.
- problème lié à Gnome: Dans un terminal, taper la commande :
gconftool --type bool --set /desktop/gnome/peripherals/touchpad/touchpad_enabled true
- problème lié au pilote ACPI: Lancer dans un terminal la commande
xev
et placer la souris dans la fenêtre qui s'ouvre.
Appuyer sur le "bouton blocage" du pavé tactile, et s'assurer qu'une ligne KeymapNotify apparaît dans le terminal.
Si ce n'est pas le cas, le pilote ACPI/WMI intercepte l'évènement clavier. Refaire le test en ayant déchargé le pilote "acpi"2)
- problème du bus série: Ajouter le paramètre
i8042.nomux
en plus de quiet splash dans le fichier/etc/default/grub
, lancer la commandesudo update-grub2
puis redémarrer.
Le « multitouch » ne fonctionne pas
Cette partie concerne uniquement les pavés tactile supportant le multitouch.
La gestion du multitouch permet d'attribuer des actions en fonction du nombre de doigts qui sont présent sur le pavé tactile. Par défaut, le tapotement à deux doigts est équivalent à un clic avec la molette. Le tapotement à trois doigts est équivalent à un clic du bouton droit.
Le tapotement à deux doigts permet, par exemple dans Firefox, l'ouverture d'hyperliens dans un nouvel onglet ou la fermeture d'onglet. Pour activer ces deux tapotements veuillez utiliser les commandes suivantes :
synclient TapButton2=2 TapButton3=3
Pour en savoir plus et ajouter d'autres options, vous pouvez consulter la rubrique Synclient de cette page.
Problèmes de contact de paume
S'il arrive que la paume de vos mains entre en contact avec le pavé tactile pendant que vous tapez au clavier et que cela provoque des clics indésirables, il existe des solutions ! (Voir ici pour la solution simple en ligne de commande).
Désactiver la fonction de clic du pavé tactile
Si votre pavé tactile possède des boutons pour assurer la fonction de clic, il n'est pas utile de conserver la fonction qui permet de cliquer en tapant sur le pavé tactile lui-même. Pour désactiver cette fonction il suffit de décocher la case "Activer les clics de souris avec le pavé tactile" dans les préférences (cf. § en début de page).
« Pointeur fou »
Il se peut que :
- Le pavé tactile ou la souris n'en fasse qu'à sa tête, que le pointeur bouge dans tous les sens et clique un peu partout sur votre écran ;
- Le pointeur bouge correctement mais que les clics soient désactivés sauf sur certains éléments de la fenêtre active.
Ce problème de « pointeur fou » à été signalé sur des portables Dell, Acer, Hercules, Nec et aussi sur d'autres distributions Linux (Fedora, …).
Pour régler ce souci, il suffit généralement d'ajouter au noyau une des combinaisons de paramètres suivantes :
- i8042.nomux=1 ;
- i8042.reset=1 ;
- i8042.nomux=1 i8042.reset=1.
Dans les paramètres système, vérifiez également les paramètres d'accès universel: la fonction "Dwell click" (clic par survol) a peut-être été activée.
pour les portables Dell XPS voir cette page (en).
Défilement vertical et horizontal inversé
Ce problème a été rencontré sur Ubuntu 14.04 et également les précédentes version (13.04 / 13.10), pour corriger cela de manière ponctuelle, il faut repérer les valeurs de « synclient » à partir d'un terminal (Ctrl+Alt+T):
synclient
Vous obtiendrez une longue liste de paramètres de ce genre:
Parameter settings: LeftEdge = 1766 RightEdge = 5388 TopEdge = 1643 BottomEdge = 4535 FingerLow = 25 FingerHigh = 30 MaxTapTime = 180 MaxTapMove = 237 MaxDoubleTapTime = 180 SingleTapTimeout = 180 ClickTime = 100 EmulateMidButtonTime = 0 EmulateTwoFingerMinZ = 282 EmulateTwoFingerMinW = 7 VertScrollDelta = -107 HorizScrollDelta = -107 VertEdgeScroll = 1 HorizEdgeScroll = 1 CornerCoasting = 0 VertTwoFingerScroll = 0 HorizTwoFingerScroll = 0 MinSpeed = 1 MaxSpeed = 1.75
Dans cette liste, il vous faut trouver les lignes VertScrollDelta = -107 et HorizScrollDelta = -107. La valeur « -107 » de ces paramètres peut différer de cet exemple, mais il vous faudra la garder de côté.
Pour retrouver le défilement vertical dans le bon sens, il faut passer la valeur négative à positive de la sorte:
synclient VertScrollDelta=107
Pour le défilement horizontal, la même commande avec le paramètre HorizScrollDelta:
synclient HorizScrollDelta=107
Pour garder ces paramètres définitivement, il faut appliquer ces deux dernières commandes au démarrage dans la rubrique (Applications au Démarrage), et enregistrer cela dans la partie Commande de la sorte:
Voir aussi
Références
- Résolution du « pointeur fou » :
- SynapticsTouchpad sur la documentation Ubuntu (en) ;
- Site de GSynaptics (en) ;
- TouchFreeze (en) ;
Contributeurs principaux : Anakill, Fabien26, Gemnoc, Percherie.
lsmod
, puis modprobe -r <pilote_acpi>