Wie deaktiviere ich das Touchpad, wenn ich den Trackpoint unter Linux verwende?

Wie deaktiviere ich das Touchpad, wenn ich den Trackpoint unter Linux verwende?

Ich habe vor Kurzem Ubuntu (und seine Derivate Xubuntu und Kubuntu) auf meinem Laptop installiert.

Auf meinem Computer habe ich sowohl ein Touchpad als auch einen Trackpoint. Unter Windows ist das Touchpad deaktiviert, wenn ich den Trackpoint verwende.

Gibt es eine Möglichkeit, dies unter Linux nachzubilden?

Antwort1

Ich habe lange gegoogelt, um eine Lösung für genau dieses Problem zu finden, und das hier ist das Ergebnis, das zu meinem System passt:

#!/bin/bash
#
#Change /dev/input/event13 to your trackstick event
    cat /dev/input/event13 > /tmp/mousemove &
#initialize counter to prevent garbage file from growing
    i="0";
    while true ; do 
        i=$[$i+1];
        #variables  
        oldchecksum=${newchecksum};
        newchecksum=`md5sum /tmp/mousemove | awk '{print $1}'`
        #see if trackpad is already disabled
        if [ "$trackpad" = "off" ]; then

            #compare previous checksum to current if they're same trackstick is not moving
            if [ "$oldchecksum" = "$newchecksum" ]; then
                #make sure trackpad is enabled
                xinput set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 1;
                trackpad="on";
            fi

        else

            #compare previous checksum to current if they're different trackstick is moving
            if [ "$oldchecksum" != "$newchecksum" ]; then
                #disable trackpad
                xinput set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 0;
                trackpad="off";
            fi

        fi

        #check for count to keep poll file smaller
        if [ "$i" = "300" ]; then
            echo '' > /tmp/mousemove;
            i="0";
            newchecksum=`md5sum /tmp/mousemove | awk '{print $1}'`
        fi
            #sleep for 1 second so we don't eat up resources
            #if the update speed is not fast enough for you a smaller number such as .75 may be better
            sleep 1;
    done

Da ich Fluxbox auf Arch ausführe, habe ich den Skriptaufruf in meinem~/.fluxbox/apps

Der einzige Vorbehalt, den ich finden konnte, besteht darin, dass Sie das Skript beenden, wenn Sie es schaffen, „pkill cat“ als Root auszuführen (wobei dieses Skript ausgeführt werden muss, um auf das Mausereignis zuzugreifen). Gleichzeitig wird das Skript, wenn Sie es beenden und „cat“ nicht beenden, weiterhin ausgeführt, bis Ihnen entweder der Speicherplatz ausgeht /tmp, Sie „pkill cat“ ausführen oder das System neu starten.

Antwort2

Ich habe einen einfachen Trick (eigentlich ein Hack):

xinput set-prop "DLL07B0:01 044E:120B" "Synaptics Finger" 100 1000 100

Es werden die falschen Druckparameter (min. > max.) und eine lächerliche Fingergröße eingestellt.

Synaptics Finger
    32 bit, 3 values, low, high, press. 

Option "FingerLow" "integer"
    When finger pressure drops below this value, the driver counts it as a release. Property: "Synaptics Finger"

Option "FingerHigh" "integer"
    When finger pressure goes above this value, the driver counts it as a touch. Property: "Synaptics Finger" 

Daher zählt der Treiber auch dann als Drücken, wenn der Druck > 1000 und der Druck < 100 ist, was logisch unmöglich ist.

verwandte Informationen