Home Log À propos RSS

OpenBSD et le trackpoint du thinkpad

Je possède un thinkpad X200, ce qui signifie que je n'ai pas de touchpad. De plus, je n'utilise pas de souris par choix. Mais bon, pour scroller des fois c'est quand même pénible :P

trackpoint_s.jpg
Figure 1: trackpoint

Bref, un thinkpad possède un trackpoint, c'est à dire la 'tite boule rouge sur la photo. De plus, sous la barre d'espace se situent 3 boutons qui sont équivalents au trois boutons d'une souris classique.

Il est possible en cliquant sur le bouton du milieu et en jouant du trackpoint, de scroller très facilement.

Sous Windows, cette fonctionnalité est activé par défaut mais ne l'est pas sous OpenBSD.

Une petite recherche sur le wiki dédié aux thinkpads nous envoie par . Tout ceci est orienté Linux mais bon, il semblerait qu'on ait juste besoin de la bonne appellation.

Donc, tout d'abord on cherche comment s'appelle notre trackpoint et comment on va pouvoir le gérer. Xinput, qui appartient à Xorg, va nous aider :

$ xinput list-props /dev/wsmouse
Device '/dev/wsmouse':
Device Enabled (131):   1
Coordinate Transformation Matrix (133): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (244):     0
Device Accel Constant Deceleration (245):       1.000000
Device Accel Adaptive Deceleration (246):       1.000000
Device Accel Velocity Scaling (247):    10.000000
WS Pointer Middle Button Emulation (248):       2
WS Pointer Middle Button Timeout (249): 50
WS Pointer Wheel Emulation (250):       1
WS Pointer Wheel Emulation Axes (251):  6, 7, 4, 5
WS Pointer Wheel Emulation Inertia (252):       10
WS Pointer Wheel Emulation Timeout (253):       200
WS Pointer Wheel Emulation Button (254):        2

Il ne nous reste plus adapter ce qui se trouve sur le thinkwiki pour OpenBSD et mettre ces commandes dans un fichier d'ouverture de session graphique. Le fichier ~.xinitrc/ semble tout indiqué et je l'utilise déjà quand je lance startx pour démarrer i3, mon gestionnaire de fenètres.

#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)

...
...
...
# trackpoint wheel emulation
xinput set-prop /dev/wsmouse "WS Pointer Wheel Emulation" 1
xinput set-prop /dev/wsmouse "WS Pointer Wheel Emulation Button" 2
xinput set-prop /dev/wsmouse "WS Pointer Wheel Emulation Timeout" 200
xinput set-prop /dev/wsmouse "WS Pointer Wheel Emulation Axes" 6 7 4 5
...
...

Et voilou, je peux scroller comme un goret :D

Discussion via la liste de diffusion (Mailing-List)