Quel est le meilleur moyen de configurer le TrackPoint d'un Thinkpad?

41

Les pages ThinkWiki précédemment utiles semblent assez obsolètes. J'essaie de modifier de manière permanente mes paramètres de sensibilité et de vitesse TrackPoint et d'activer le défilement du bouton central de la souris. J'ai déjà essayé configure-trackpoint, mais les paramètres n'ont pas été sauvegardés de manière permanente (ils sont perdus après le redémarrage).

Je l' ai essayé gpointing-device-settings. En l’utilisant, le défilement du bouton central de la souris peut fonctionner, mais je ne peux pas modifier les paramètres de vitesse ou de sensibilité du point de piste. Toutes les méthodes de la page ThinkWiki que j'ai essayées ne fonctionnent pas comme indiqué dans Ubuntu 11.04. Quelqu'un peut-il expliquer comment modifier en permanence les paramètres TrackPoint afin que je puisse les utiliser correctement?

Jonathan Blackhall
la source

Réponses:

47

Malheureusement, il semble n'y avoir aucun moyen facile. Ce que je vais décrire, c'est comment créer un nouveau travail Upstart pour définir les valeurs au démarrage via le système de fichiers virtuel sous / sys.

  1. Trouver le chemin d'accès de votre trackpoint à l'appareil

    Exécutez ce qui suit dans un gnome-terminal (appuyez sur Alt+ F2, tapez gnome-terminalet tapez Enter):

    find /sys/devices/platform/i8042 -name name | xargs grep -Fl TrackPoint | sed 's/\/input\/input[0-9]*\/name$//'
    

    Dans mon cas, cela revient /sys/devices/platform/i8042/serio1/serio2- changez-le pour ce qu'il retourne pour vous dans les étapes suivantes.

  2. Trouver des valeurs pour la sensibilité et la vitesse

    Exécutez les commandes suivantes dans un gnome-terminal:

    echo 220 | sudo tee /sys/devices/platform/i8042/serio1/serio2/sensitivity
    

    pour une sensibilité de 220 (cela vous demandera votre mot de passe), et

    echo 100 | sudo tee /sys/devices/platform/i8042/serio1/serio2/speed
    

    pour une vitesse de 100. Une fois que vous avez trouvé les valeurs qui vous conviennent, rendez le changement permanent en utilisant un travail Upstart:

  3. Créer une nouvelle règle udev

    Nous devons maintenant appliquer les paramètres au démarrage du système. Par conséquent, appuyez sur Alt+ F2, tapez gksu gedit /etc/udev/rules.d/trackpoint.ruleset appuyez sur Enter(cela vous demandera votre mot de passe). Puis collez le texte suivant:

    SUBSYSTEM=="serio", DRIVERS=="psmouse", WAIT_FOR="/sys/devices/platform/i8042/serio1/serio2/sensitivity", ATTR{sensitivity}="220", ATTR{speed}="110"
    

    (Update) As WAIT_FORobsolète, sur les systèmes plus récents, vous pouvez utiliser DEVPATH:

    SUBSYSTEM=="serio", DRIVERS=="psmouse", DEVPATH=="/sys/devices/platform/i8042/serio1/serio2", ATTR{sensitivity}="220", ATTR{speed}="110"     
    

    Enregistrez le fichier et redémarrez ou exécutez les commandes ci-dessus:

    sudo udevadm control --reload-rules
    sudo udevadm trigger 
    
htorque
la source
5
Merci pour la réponse très détaillée. J'ai donc approfondi les articles de ThinkWiki la nuit dernière et j'ai découvert quelque chose d'autre qui a fonctionné. Les deux premières étapes devraient être les mêmes. Au lieu d'un travail Upstart, j'ai utilisé les règles udev. J'ai créé un fichier en appuyant sur Alt + F2, en tapant gksu gedit /etc/udev/rules.d/trackpoint.ruleset en collant les éléments suivants: SUBSYSTEM=="serio", DRIVERS=="psmouse", WAIT_FOR="/sys/devices/platform/i8042/serio1/serio2/sensitivity", ATTR{sensitivity}="200", ATTR{speed}="150"Ensuite, redémarrez. Existe-t-il une raison pour laquelle je devrais utiliser les règles Upstart vs udev?
Jonathan Blackhall
OMI, l'approche d'udev est la meilleure, merci! Edité cela dans la réponse. :-)
htorque
1
REMARQUE: utilisez DEVPATH=="(deux égaux), sinon cela ne fonctionnera pas. Impossible de modifier le message avec un seul changement de caractère, il est donc laissé un commentaire ..
mercredi
La règle udev ne semble pas fonctionner dans Ubuntu 16.04. Voir les réponses ultérieures pour d'autres approches (par exemple celle de Nguyen Thanh Tung).
MakisH
17

C’est pourquoi ce qui m’a aidé à rendre TRACKPOINT plus sensible.

1. Le moyen le plus simple est de faire en terminal:

 $ xinput --list --short

Vous verrez quelque chose comme ça:

omicron@omicron:~$ xinput --list --short
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Lite-On Technology Corp. ThinkPad USB Keyboard with TrackPoint    id=10.  [slave  pointer  (2)]
⎜   ↳ ImPS/2 Generic Wheel Mouse                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)]
    ↳ Lite-On Technology Corp. ThinkPad USB Keyboard with TrackPoint    id=9    [slave  keyboard (3)]
    ↳ Eee PC WMI hotkeys                        id=11   [slave  keyboard (3)]

2. Recherchez votre appareil de point de repère. Dans mon cas, c'est id = 10.

3. Puis faites dans le terminal:

$ xinput --set-prop "10" "Device Accel Constant Deceleration" 0.5

"10" est l'ID du périphérique (clavier USB ThinkPad de Lite-On Technology Corp. avec identificateur TrackPoint = 10), entrez votre ID ici, et "0,5" le niveau de sensibilité. Vous pouvez expérimenter la sensibilité en mettant des nombres compris entre 0 et 1000. Mais vous n'en avez certainement pas besoin. Plus le nombre est petit, plus la vitesse est élevée.

J'utilise 0.4 ou 0.45

4. IMPORTANT. Lorsque la vitesse est choisie, copiez votre dernier script pour un démarrage automatique.

entrez la description de l'image ici

PS Si les paramètres ne fonctionnent plus un jour, vérifiez à nouveau l'ID. Certaines modifications peuvent être apportées à la table des périphériques et l’ID peut être modifié.

J'espère que cela vous aidera.

Profitez de votre ThinkPad!

Vitaly Dubyna
la source
2
Malheureusement, je comprends: je property 'Device Accel Constant Deceleration' doesn't exist, you need to specify its type and formatne sais pas comment faire cela ... des suggestions? (Thinkpad T420, Ubuntu 18.04)
JamesBB
1
Je pense que vous êtes limité aux propriétés indiquées par xinput list-props $device_id(où device_id= 10 dans l'exemple ci-dessus). Par exemple, sur mon Thinkpad X1c5 fonctionnant le 18.04, j'ai une propriété appelée libinput Accel Speedqui semble
ajustable
1
BTW, changer le capuchon en caoutchouc Trackpoint pourrait également aider. Le mien était désespérément dur (au point que mon doigt me faisait mal) et après l'avoir complètement usé (en seulement 18 mois, ce qui n'était jamais arrivé avec de nombreux ThinkPad précédents), j'ai décidé d'investir environ 15 $ en casquettes de remplacement (pièce Lenovo n ° 4XH0L55146, livrée avec 10 de ceux). Le résultat est incroyable: mon Trackpoint est passé de beaucoup trop difficile à devenir trop sensible. Le paramètre qui fonctionne pour moi maintenant (X1c5 avec TPPS/2 ALPS TrackPointsur 18.04) est "libinput Accel Speed" -1.0(étant le paramètre d'accélération minimum). YMMV bien sûr
sxc731
2
J'ai thinkpad E480 et Ubuntu 18.04 et la xinput --set-prop "12" "libinput Accel Speed" -0.5commande a fonctionné
Xavitoj Cheema
1
La réponse la plus votée a cessé de fonctionner après la dernière mise à jour du système pour une raison quelconque (Arch / Manjaro). Cela a fonctionné pour moi. Merci.
xji
13

Pour mon Thinkpad T530 et Ubuntu 15.10. Il suffit d'utiliser:

sudo -i gedit /etc/udev/rules.d/10-trackpoint.rules

puis ajoutez le contenu suivant sur, puis redémarrez. La valeur de réglage sera conservée.

ACTION=="add",
SUBSYSTEM=="input",
ATTR{name}=="TPPS/2 IBM TrackPoint",
ATTR{device/sensitivity}="190",
ATTR{device/speed}="180",
ATTR{device/inertia}="6",
ATTR{device/press_to_select}="0"
Nguyen Thanh Tung
la source
Cela fonctionne même lorsque les fichiers nécessaires dans les autres réponses (serio1 / sensibilité) n'existent pas
Soupy
Cela semble avoir fonctionné pour moi. :) (ThinkpadT420, Ubuntu18.04). Juste besoin de jouer avec les réglages, un peu fastidieux de devoir redémarrer à chaque fois, mais je peux vivre avec ça.
JamesBB
2
@JamesBB en cours d'exécution udevadm trigger --action add --subsystem allfera que udev appliquera les règles à tous les périphériques présents.
CameronNemo
@CameronNemo - je vais essayer, merci! Semble avoir besoin --subsystem-match all, mais je pense que cela fonctionne.
JamesBB
4

@ vitaly-dubyna a la bonne réponse. Sur debian, sa méthode fonctionne parfaitement. Pour vous simplifier la vie, placez un fichier .xsessionrcdans votre répertoire personnel avec tous les paramètres pour qu'il soit chargé après chaque redémarrage.

faire une nouvelle utilisation de fichiers vim, pico, gedit-

vim .xsessionrc 

puis coller ceci à l'intérieur

xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation" 1
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Button" 2
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Timeout" 200
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Axes" 7 6 4 5
xinput set-prop "TPPS/2 IBM TrackPoint" "Device Accel Constant Deceleration" 0.4

où les 4 premières lignes servent à configurer le défilement vertical et horizontal avec trackpoint et la dernière ligne à contrôler la vitesse / et la sensibilité.

Notez que, l'ID de périphérique pouvant changer en fonction de l'activation / désactivation de certains périphériques d'entrée dans le BIOS, il est préférable d'utiliser le nom du périphérique entre guillemets. Pour la plupart des thinkpads, TPPS/2 IBM TrackPointc'est la référence.


** EDIT: ** Nov 2015

#get the device ID for the trackpad. We know it contains the string "TPPS"
ibm_trackpad_id=$(xinput | grep 'TPPS' | cut -d"=" -f2 | cut -f1)
echo $ibm_trackpad_id > ~/temp/ibm_trackpad_id

#set desired params for trackpoint
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation" 1
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation Button" 2
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation Timeout" 200
xinput set-prop $ibm_trackpad_id "Evdev Wheel Emulation Axes" 7 6 5 4
xinput set-prop $ibm_trackpad_id "Device Accel Constant Deceleration" 0.15

# get wireless mouse device ID 
logitech_mouse_id=$(xinput | grep "Logitech" | cut -d"=" -f2 | cut -f1)
echo $logitech_mouse_id > ~/temp/logitech_mouse_id

# this is device dependent. Map the buttons on your mouse the functionality you want. 
xinput set-button-map $logitech_mouse_id 1 2 3 4 5 6 7 9 8 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

# set props for external mouse
xinput set-prop $logitech_mouse_id "Device Accel Constant Deceleration" 1.7
xinput set-prop $logitech_mouse_id "Device Accel Adaptive Deceleration" 2
xinput set-prop $logitech_mouse_id "Evdev Wheel Emulation" 1
xinput set-prop $logitech_mouse_id "Evdev Wheel Emulation Axes" 7 6 5 4
xinput set-prop $logitech_mouse_id "Evdev Wheel Emulation Button" 8
Jonathan
la source
1
Votre "Evdev Wheel Emulation Axes"réglage utilise le défilement naturel horizontal, le défilement normal vertical. Je suppose que la plupart veulent un défilement naturel (utilisation 7 6 5 4) ou tout à fait normal (utilisation 6 7 4 5).
tanius
Depuis Ubuntu 17.10, le evdevpilote sur lequel cette solution s’appuie n’est plus installé par défaut. Vous pouvez toujours l'installer avec sudo apt install xserver-xorg-input-evdevou utiliser le libinputpilote désormais par défaut . Dans ce cas, la réponse de @htorque est le moyen de configurer la vitesse et la sensibilité.
tanius
4

Ceci est basé sur la réponse de Vitaly Dubyna, mais mis à jour pour fonctionner pour les versions récentes (2019) des Thinkpads et Xorg (grâce aux commentaires de cette réponse).

A partir de la ligne de commande, entrez cette commande (uniquement la partie après le $):

$ xinput | grep -i trackpoint
TPPS/2 Elan TrackPoint   id=12 

Notez id = 12 (peut être différent sur votre système).

$ xinput --list-props 12
...
libinput Accel Speed (300):     0.000000
libinput Accel Speed Default (301):     0.000000
...

Expérimentez avec le réglage de la vitesse; valeurs négatives autorisées. Par exemple,

$ xinput --set-prop 12 'libinput Accel Speed' -0.25

Une fois que vous êtes satisfait, ajoutez la commande en tant qu'application de démarrage (généralement sous Menu Démarrer> Préférences> Applications de démarrage).

Le nom du paramètre ci-dessus est confirmé pour les modèles Thinkpad X1c5 (Ubuntu 18.04), E480 (18.04) et E490 (Mint 19.1).

Han-Kwang Nienhuys
la source
2

Configurer les libinputoptions via xorg.conf.d et udev

Depuis Ubuntu 17.10, le libinputpilote est maintenant la norme.

Certaines de ses options peuvent être configurées via le mécanisme X.org, mais la vitesse et la sensibilité doivent être configurées avec des règles udev pour définir les paramètres du pilote du noyau. (Voir la réponse de @htorque pour cela.)

Pour configurer les autres options, créez un fichier /etc/X11/xorg.conf.d/52-trackpoint-tweaks.conf(ou un nom similaire). Le fichier devrait avoir ce contenu:

Section "InputClass"
    Identifier         "Trackpoint tweaks"
    MatchProduct       "TPPS/2 IBM TrackPoint"
    MatchDevicePath    "/dev/input/event*"

    # The default driver now, so optional to put in this line. 
    # But does not hurt mentioning where the options will go.
    Driver             "libinput"

    Option             "NaturalScrolling"      "true"
EndSection

Pour voir l'effet, vous devez bien sûr redémarrer X. Pour la liste des autres options X.org disponibles, voir man (4) libinput .

Pour une liste des propriétés xinput correspondantes (mais différemment nommées), voir xinput --list-prop "TPPS/2 IBM TrackPoint"ou encore man (4) libinput . Vous pouvez les utiliser pour tester les effets immédiatement avec des xinput --set-prop […]commandes, sans avoir à redémarrer X à chaque fois. Ensuite, utilisez les équivalents du 52-trackpoint-tweaks.conffichier pour rendre les modifications permanentes, comme indiqué ci-dessus.

Tanius
la source
0

J'ai un groupe de réflexion et j'ai tout configuré comme vous le souhaitez grâce à une application appelée Périphériques de pointage, qui est un dialogue un peu plus avancé sur les paramètres de la souris.

Je ne me souviens pas combien d’options existaient pour la sensibilité, mais contrairement à l’écran des paramètres de la souris intégrée, celui-ci reconnaissait le trackpoint et le trackpad de manière indépendante et permettait un contrôle plus précis, comme le réglage du bouton de défilement (le bouton 2 était dans ma configuration) et permettant la sensibilité de détection paume.

Andrew
la source
Il n'y a pas d'options de sensibilité ou de vitesse avec les paramètres de gpointing-device.
Jonathan Blackhall
0

Sur Ubuntu 12.04 Unity 2D sur Thinkpad sl410, j'utilise la Mouse And Touchpadfenêtre standard dans les paramètres. La modification de l'accélération ou de la vitesse modifie également la sensibilité d'un point de suivi. Bien que le comportement soit inversé - la diminution de la vitesse entraîne une augmentation de la sensibilité du point de suivi. Les paramètres persistent entre les redémarrages.

Ayrat
la source
0

Configurer les evdevoptions via xorg.conf.d (DEPRECATED)

Le evdevpilote était le pilote par défaut du trackpoint dans les versions précédentes d'Ubuntu, mais à partir d'Ubuntu 17.10, l'approche ci-dessous est obsolète et ne fonctionne plus immédiatement. Ceci est dû au fait que le evdevpilote qui n’est plus installé par défaut, étant le libinputpilote standard, se trouve maintenant. Voir ma réponse pour la configurer.

Si vous le souhaitez, vous pouvez toujours utiliser la evdevsolution ci-dessous après avoir installé le pilote avec sudo apt install xserver-xorg-input-evdev( source ).

Tout peut être configuré correctement dans un /etc/X11/xorg.conf.d/52-trackpoint-tweaks.conffichier (ou nommé de la même manière - sur Ubuntu, vous devez créer un répertoire et un fichier, mais le mécanisme fonctionne; peut-être que l'un des noms de répertoire est à la x11place de X11certaines versions).

Le fichier doit avoir ce contenu:

Section "InputClass"
    Identifier "Trackpoint tweaks"
    MatchProduct       "TPPS/2 IBM TrackPoint"
    MatchDevicePath    "/dev/input/event*"

    # Specify the driver, as else Ubuntu 17.10 will use libinput.
    Driver             "evdev"

    # Configure wheel emulation, using middle button and "natural scrolling".
    Option             "EmulateWheel"            "on"
    Option             "EmulateWheelButton"      "2"
    Option             "EmulateWheelTimeout"     "200"
    Option             "EmulateWheelInertia"     "7"
    Option             "XAxisMapping"            "7 6"
    Option             "YAxisMapping"            "5 4"

    # Set up an acceleration config ("mostly linear" profile, factor 5.5).
    Option             "AccelerationProfile"     "3"
    Option             "AccelerationNumerator"   "55"
    Option             "AccelerationDenominator" "10"
    Option             "ConstantDeceleration"    "3"
EndSection

Pour voir l'effet, vous devez bien sûr redémarrer X. Pour jouer avec ces paramètres pendant que X est en cours d'exécution, utilisez xinput, mais notez que les noms des options y sont différents.

Comme @Vitaly Dubyna l'a souligné, la "décélération constante" peut être utilisée pour contrôler la sensibilité. Elle réduit tous les mouvements avec ce facteur. La valeur "3" ralentit tous les mouvements 3 fois par rapport à la valeur par défaut "1".

Documentation optionnelle:

Tanius
la source