Touchpadtreiber
Baustelle: Dieser Artikel ist eine Baustelle. Das heißt, jemand hat sich dieses Artikels angenommen und überarbeitet ihn gerade. |
Nahezu jeder Laptop bzw. Netbook verfügt heutzutage über ein Touchpad. Im folgenden wird beschrieben, wie sich dieses an die eigenen Bedürfnisse anpassen lässt.
Einführung
Der Touchpadtreiber befindet sich im Paket xserver-xorg-input-synaptics. Da es sich hierbei um eine indirekte Abhängigkeit des Paketes xserver-xorg handelt, muss es nicht händisch nachinstalliert werden, sondern der Treiber steht bereits dem laufenden X zur Verfügung. Der Treiber heißt zwar wie die Firma Synaptics wird aber von dieser weder entwickelt noch ist er auf Touchpads dieser Firma beschränkt. Auch ohne diesen Treiber stehen auf den meisten Touchpads bereits grundlegende Funktionen wie das bewegen des Mauszeigers zur Verfügung. Diese Funktionen werden dann vom Maustreiber bereitgestellt.
Hardware ermitteln
Manchmal kann es vom Vorteil sein, wenn man die genaue Hardware kennt. Dies kann man mit folgendem Befehl ermitteln:
user@debian:~$ grep -B 5 mouse /proc/bus/input/devices
Es kann nämlich zu Problemen kommen mit einigen Touchpadgeräten und dann hilft diese Angabe den Helfenden wenn es um die Fehleranalyse geht.
Temporäre Einstellungen
Während einer X-Session lässt sich der Treiber bequem mit dem Programm synclient konfigurieren. Synclient muss dafür nicht gesondert installiert werden da es Bestandteil des Paketes xserver-xorg-input-synaptics ist. Über den Befehl
user@debian:~$ synclient -l
lassen sich alle zur Verfügung stehenden Parameter anzeigen. Änderungen lassen sich entsprechend
user@debian:~$ synclient Parameter=neuerWert
vornehmen. Die folgende Tabelle beschreibt die einzelnen Parameter und gibt den gültigen Wertebereich für neuerWert an.
Parameter | Bedeutung |
---|---|
LeftEdge | Beispiel |
RightEdge | Beispiel |
TopEdge | Beispiel |
BottomEdge | Beispiel |
FingerLow | Gibt den Schwellenwert an, ab wann eine Berührung nicht mehr als Druck erkannt wird. |
FingerHigh | Gibt den Schwellenwert an, ab wann eine Berührung als Druck erkannt wird. |
MaxTapTime | Gibt in Millisekunden an, wie lange eine Berührung sein darf, um als Klick erkannt zu werden. Der Wert "0" schaltet Klicks mit dem Touchpad selbst ganz ab. |
MaxTapMove | Gibt an, wie weit sich eine Berührung bewegen darf, um als Klick erkannt zu werden. |
MaxDoubleTapTime | Gibt in Millisekunden an, wie lange zwei Berührungen nacheinander sein dürfen, um als Doppelklick erkannt zu werden. |
SingleTapTimeout | Beispiel |
ClickTime | Beispiel |
EmulateMidButtonTime | Beispiel |
EmulateTwoFingerMinZ | Beispiel |
EmulateTwoFingerMinW | Beispiel |
VertScrollDelta | Legt fest, ab welcher Distanz in vertikaler Richtung eine Bewegung als Scrollen anerkannt wird. |
HorizScrollDelta | Legt fest, ab welcher Distanz in horizontaler Richtung eine Bewegung als Scrollen anerkannt wird. |
VertEdgeScroll | Aktiviert die Nutzung des rechten Randes als vertikalen Scrollbalken. |
HorizEdgeScroll | Aktiviert die Nutzung des unteren Randes als horizontalen Scrollbalken. |
CornerCoasting | Weiterscrollen, wenn der Finger bei EdgeScroll in der Ecke angekommen ist. |
VertTwoFingerScroll | Aktiviert das vertikale Scrollen mit zwei Fingern auf dem Touchpad. |
HorizTwoFingerScroll | Aktiviert das horizontale Scrollen mit zwei Fingern auf dem Touchpad. |
MinSpeed | Stellt die Minimalgeschwindigkeit des Zeigers ein. |
MaxSpeed | Stellt die Maximalgeschwindigkeit des Zeigers ein |
AccelFactor | Stellt die Beschleunigung von Minimalgeschwindigkeit zu Maximalgeschwindigkeit ein |
TouchpadOff | Ermöglicht verschiedene Modi des Touchpads. Der Wert 0 schaltete das Touchpad ein, mit dem Wert 1 kann das Touchpad ausgeschaltet werden und mit 2 wird nur klicken und scrollen ausgeschaltet. |
LockedDrags | Beispiel |
LockedDragTimeout | Beispiel |
RTCornerButton | Gibt an, welcher Mausbutton durch Tippen in die rechte obere Ecke ausgelöst wird (RT = right-top). |
RBCornerButton | Gibt an, welcher Mausbutton durch Tippen in die rechte untere Ecke ausgelöst wird (RB = right-bottom). |
LTCornerButton | Gibt an, welcher Mausbutton durch Tippen in die linke obere Ecke ausgelöst wird (LT = left-top). |
LBCornerButton | Gibt an, welcher Mausbutton durch Tippen in die linke untere Ecke ausgelöst wird (LB = left-bottom). |
TapButton1 | Gibt an, welcher Maustaste beim Tippen mit einem Finger in die Mitte des Touchpads ausgelöst wird (Analog für zwei oder drei Finger). |
TapButton2 | Beispiel |
TapButton3 | Beispiel |
ClickFinger1 | Beispiel |
ClickFinger2 | Beispiel |
ClickFinger3 | Beispiel |
CircularScrolling | Aktiviert kreisförmiges Scrollen. |
CircScrollDelta | Beispiel |
CircScrollTrigger | Legt fest, wo das kreisförmige Scrollen begonnen werden muss. 0 Alle Seiten und Ecken; 1 Obere Seite; 2 Obere, rechte Ecke; 3 Rechte Seite; 4 Untere, Rechte Ecke; 5 Untere Seite; 6 Untere, Linke Ecke; 7 Linke Seite; 8 Obere, Linke Ecke |
PalmDetect | Erkennt versehentliches Tippen mit der Handfläche als ungültig. |
PalmMinWidth | Beispiel |
PalmMinZ | Beispiel |
CoastingSpeed | Beispiel |
CoastingFriction | Beispiel |
PressureMotionMinZ | Beispiel |
PressureMotionMaxZ | Beispiel |
PressureMotionMinFactor | Beispiel |
PressureMotionMaxFactor | Beispiel |
GrabEventDevice | Beispiel |
TapAndDragGesture | Beispiel |
AreaLeftEdge | Beispiel |
AreaRightEdge | Beispiel |
AreaTopEdge | Beispiel |
AreaBottomEdge | Beispiel |
HorizHysteresis | Beispiel |
VertHysteresis | Beispiel |
ClickPad | Beispiel |
Dauerhafte Einstellungen
Um die Einstellung dauerhaft vornehmen zu können, muss eine Konfigurationsdatei in /etc/X11/xorg.conf.d/ mit dem Namen 50-synaptics.conf angelegt werden. Da es bereits eine Vorlage für diese Datei gibt, kann man diese einfach mit folgenden Befehl dahin kopieren:
root@debian:~# cp -i /usr/share/X11/xorg.conf.d/50-synaptics.conf /etc/X11/xorg.conf.d/50-synaptics.conf
Die eigentlichen Einstellungen sollten dann im touchpad catchall Block vorgenommen werden und dem Schema "Option" "Wert" folgen. Als "Option" und "Wert" stehen hierbei die Kombinationen die sich auch temporär über synclient vornehmen lassen zur Verfügung.
Beispiel für aktiviertes Touchpadscrolling und Touchpadtipping
Section "InputClass" Identifier "touchpad catchall" Driver "synaptics" MatchIsTouchpad "on" Option "TapButton1" "1" Option "VertEdgeScroll" "1" # This option is recommend on all Linux systems using evdev, but cannot be # enabled by default. See the following link for details: # http://who-t.blogspot.com/2010/11/how-to-ignore-configuration-errors.html # MatchDevicePath "/dev/input/event*" EndSection