web-dev-qa-db-fra.com

Comment configurer le trackball Logitech Marble

Vous pouvez le configurer en utilisant xinput.

4
TheNano

C'est toujours ce que j'ai fait. ça marche un Peach pour chaque trackman que j'ai jamais utilisé. C'est la dernière étape, la plus simple, de la page officielle d'ubuntu.

~/trackman.sh:

#!/bin/bash

xinput set-button-map "Logitech USB Trackball" 1 2 3 4 5 6 7 8 9
xinput set-int-prop "Logitech USB Trackball" "Evdev Wheel Emulation Button" 8 8
xinput set-int-prop "Logitech USB Trackball" "Evdev Wheel Emulation" 8 1
xinput set-int-prop "Logitech USB Trackball" "Evdev Wheel Emulation Axes" 8 6 7 4 5
xinput set-int-prop "Logitech USB Trackball" "Evdev Wheel Emulation X Axis" 8 6
xinput set-int-prop "Logitech USB Trackball" "Evdev Drag Lock Buttons" 8 9`


chmod +x ~/trackman.sh

puis, chaque fois que vous vous connectez (ou dans un script de démarrage), bash ~/trackman.sh

Terminé. Ce petit script fonctionne beaucoup, beaucoup mieux que l'installateur officiel ~ 60mb de Windows IMHO :)

2
Sasha Shepherd

j'ai cette configuration et cela a très bien fonctionné jusqu'à ce que je passe à Debian Stretch ... et que se passe-t-il? 'evdev' n'est plus utilisé; parce que 'libinput' l'a remplacé.

Vérifiez la lib utilisée:

xinput list-props "Logitech USB Trackball"

Si vous trouvez beaucoup d'accessoires commençant par 'Evdev', oubliez mon commentaire, SINON si elle commence par 'libinput', cette ligne pourrait faire l'affaire:

xinput set-prop "Logitech USB Trackball" "libinput Button Scrolling Button" 8

Aussi, je recommande ceci pour le confort:

# Enable middle button (on 9) and disable all useless and conflicting buttons and others.
xmodmap -quiet -e "pointer = 1 0 3 4 5 6 7 0 2 0 0 0" 

(Et NOT THIS: xmodmap -quiet -e "pointer = 1 0 3 4 5 6 7 8 2 10 11 12" qui ne dit que d'utiliser le bouton central (2) au lieu de Navigateur Suivant (9). Vous devez dire d'utiliser uniquement le défilement - puis rien - lorsque vous cliquez sur le navigateur Précédent (8))

RÉCAP Donc, avec ces modifications, vous avez une balle et 4 boutons utilisables (1-BIG 2-small 3-small 4-BIG) sur le trackball.

  • Une balle -> déplacer la souris + faire défiler la souris si vous appuyez sur le bouton 2.
  • Bouton 1 -> bouton gauche classique
  • Bouton 2 -> Appuyez dessus pour faire défiler la balle
  • Bouton 3 -> bouton du milieu (utile pour copier la sélection sous Linux)
  • Bouton 4 -> bouton droit classique
1
luffah

J'ai testé cela en 11h10 et cela fonctionne très bien. Cette sélection provient de "Ubuntuwiki"

Évitez d’utiliser Hal pour cette version car elle a des problèmes connus. Mettez ce qui suit dans le terminal, en utilisant gedit:

Éditez $HOME/bin/trackball.sh en utilisant cette commande:

gedit $HOME/bin/trackball.sh

Collez ensuite ceci dans le fichier:

#!/bin/bash
dev="Logitech USB Trackball"
we="Evdev Wheel Emulation"
xinput set-int-prop "$dev" "$we Button" 8 8
xinput set-int-prop "$dev" "$we" 8 1

# xinput set-int-prop "$dev" "$we" 8 1
# xinput set-int-prop "$dev" "$we Button" 8 9
# xinput set-int-prop "$dev" "$we X Axis" 8 6 7
# xinput set-int-prop "$dev" "$we Y Axis" 8 4 5
# xinput set-int-prop "$dev" "Drag Lock Buttons" 8 8 

Assurez-vous que trackball.sh commence par #!/bin/bash. Rendre le script exécutable en lançant ceci:

chmod +x $HOME/bin/trackball.sh`

Ajoutez les lignes suivantes à $HOME/.bashrc, en utilisant gedit $HOME/.bashrc et placez-le dans le fichier même s'il est vide:

xmodmap $HOME/.Xmodmap > /dev/null 2>&1
$HOME/bin/trackball.sh

Éditez $ HOME/.Xmodmap en utilisant: gedit $HOME/.Xmodmap

pointer = 1 8 3 4 5 6 7 9

Déconnectez-vous et retournez à l'alto!

0
TheNano

La façon dont vous faites cela n'est pas tout à fait correcte. .bashrc est exécuté lorsque vous démarrez bash Shell. À moins que vous ne l'utilisiez qu'à partir d'un émulateur de terminal exécuté dans une session X, des erreurs se produiront à chaque fois que vous vous connectez ou ouvrez un nouveau terminal.

Vous voudrez peut-être regarder la solution que j'ai fournie ici

0
Marcin Kaminski

Si votre souris est connectée à un adaptateur PS/2 -> USB, vous pouvez essayer la commande

lsusb

Pour moi, cela a montré, entre autres choses, qu’il existe un

Bus 001 Dispositif 018: ID 04d9: 1400 Holtek Semiconductor, Inc. Clavier PS/2 + contrôleur de souris

La première partie du code d’identité USB (04d9) identifie le fabricant et la seconde le produit.

Maintenant, vous pouvez utiliser ces informations pour découvrir l’identité des périphériques connectés à cet adaptateur en tapant

xinput list --long | grep 04d9

Ce que j'ai eu était

↳ HID 04d9: 1400 id = 9 [pointeur esclave (2)]

HID 04d9: 1400 id = 8 [clavier esclave (3)]

Je n'ai pas de clavier connecté à l'adaptateur, mais il y a ma vieille souris à boule de commande, Logitech TrackMan Marble FX.

Je voulais donc en savoir plus sur le périphérique identifié ci-dessus comme étant id = 9 et j'ai utilisé la commande xinput pour obtenir ce que je voulais:

xinput list-props 9

La première ligne de la liste était

Dispositif 'HID 04d9: 1400':

La liste montre également les propriétés du périphérique, et j’ai utilisé celles-ci pour créer les commandes nécessaires à la modification de ces propriétés. J'ai fini par deux commandes:

xinput set-int-prop "pointer:HID 04d9:1400" "Evdev Wheel Emulation Button" 8 3

xinput set-int-prop "pointer:HID 04d9:1400" "Evdev Wheel Emulation" 8 1

La première ligne transforme le bouton 3 de la souris TrackMan en bouton d’émulation Roue. (Le bouton 4 a.k.a. "8" ne semble pas fonctionner du tout). Le "pointeur" dans les commandes fait référence à la souris et évite toute confusion avec un "clavier" pouvant être connecté au même adaptateur (pas dans mon système).

0
Jorma