Klicken Sie mit der mittleren Maustaste mit ThinkPad auf Scrollen / vermeiden Sie das Einfügen

11

Ich habe eine ThinkPad USB-Tastatur und möchte den mittleren Klick sowohl zum Einfügen als auch zum Scrollen verwenden können.

Dies funktioniert auf meinem ThinkPad-Laptop. Wenn auf dem Laptop die mittlere Klick-Taste kurz genug gedrückt gehalten wird, wird sie beim Loslassen als " Einfügen " interpretiert . Wenn es länger gehalten wird, wird es als " Bildlauf " interpretiert .

Das Problem ist, dass bei Verwendung der USB-Tastatur die Entscheidung zum Einfügen beim Drücken der mittleren Taste und nicht beim Loslassen getroffen wird. Wenn ich also versuche, mit dem mittleren Klick zu scrollen, wird sie zuerst eingefügt und dann gescrollt, wenn ich sie gedrückt halte interessanterweise tritt diese Einfügung nicht auf, wenn ich den Cursor bereits bewege, was meine aktuelle Problemumgehung ist).

Gibt es eine Möglichkeit, X11 anzuweisen, beim Loslassen der mittleren Taste einzufügen, anstatt zu drücken (wobei die Entscheidung zum Scrollen statt zum Einfügen davon abhängt, wie lange es gehalten wurde)?

Alex
quelle
2
Es ist überraschend zu hören, dass das Verhalten von X11 je nach verwendeter Maus unterschiedlich ist. Ich schlage vor , mit xevder achten Sie auf ButtonPressund ButtonReleaseEreignisse zu sehen , ob Sie Ihren Laptop-Taste wirklich die Ereignisse Senden Sie denken , es an der Zeit ist , dass Sie denken , es ist. Es ist möglich, dass es stattdessen etwas von seiner eigenen Magie macht und X11 "anlügt", wenn die Tasten gedrückt und losgelassen werden. Übrigens scheint es normal zu sein, dass das Einfügen sofort nach Drücken von Taste 2 erfolgt, nicht nach dem Loslassen .
Celada
1
Ich würde auch gerne wissen, wie das geht, da ich auf einer Lenovo Bluetooth Trackpoint-Tastatur bin.
Justin N
Diese USB-Tastatur, welches genaue Modell ist das? Hat es ein "echtes" Touchpad oder ein sogenanntes Clickpad (ohne physische Tasten)? Welche Distribution und Desktop-Umgebung verwenden Sie? Gibt es eine spezielle xorg-Konfiguration (/etc/X11/xorg.conf und /etc/X11/xorg.conf.d/)? Sie können einige Hinweise hier finden: askubuntu.com/questions/2557/thinkpad-middle-button-scrolling und für Clickpad hier: askubuntu.com/questions/380825/…
doktor5000
1
Irgendwelche Updates dazu? Ich habe das gleiche Problem mit einer externen Lenovo Tastatur.
Languitar
FWIW, ich habe zwei Modelle der Bluetooth-Trackpoint-Tastatur, und eines hat dieses Problem. xevzeigt, dass die ButtonPressfor-Schaltfläche 2, sobald ich klicke, dann ButtonReleasewenn ich anfange zu scrollen. Was passieren sollte, ist, dass keines dieser Ereignisse generiert wird, bis die Aktion eindeutig ist, indem entweder der Trackpoint verschoben wird (in diesem Fall werden weder Drücken noch Löschen generiert) oder Taste 2 losgelassen wird (in diesem Fall werden beide Ereignisse bei Freigabe gesendet).
StewSquared

Antworten:

1

Das funktioniert gut für mich in /etc/X11/xorg.conf.d/20-thinkpad.conf:

Section "InputClass"
    Identifier  "Trackpoint Wheel Emulation"
    MatchProduct    "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device|Composite TouchPad / TrackPoint"
    MatchDevicePath "/dev/input/event*"
    Option      "EmulateWheel"      "true"
    Option      "EmulateWheelButton"    "2"
    Option      "Emulate3Buttons"   "false"
    Option      "XAxisMapping"      "6 7"
    Option      "YAxisMapping"      "4 5"
EndSection

Der wichtige Abschnitt ist der MatchProductEintrag, der auch die USB-Tastatur enthält. Sie finden die Tastaturproduktzeichenfolge in, /var/log/Xorg.0.logindem Sie nach suchen (II) evdev:.

Corecode
quelle
1

Versuchen Sie, die Bildlaufemulation mit den folgenden Befehlen zu aktivieren, die auf mehreren Modellen der Trackpoint-Tastatur gut funktionieren:

dev="TPPS/2 IBM TrackPoint"
xinput --set-int-prop "$dev" "Evdev Wheel Emulation Axes" 8 6 7 4 5
xinput --set-int-prop "$dev" "Evdev Wheel Emulation Button" 8 2
xinput --set-int-prop "$dev" "Evdev Wheel Emulation" 8 1

Wenn Ihnen das nicht gefällt, können Sie es mit rückgängig machen

xinput --set-int-prop "$dev" "Evdev Wheel Emulation" 8 0

Möglicherweise müssen Sie dev basierend auf Ihrem Tastaturmodell anpassen. Lauf

xinput --list | grep TrackPoint

um zu sehen, wie Ihr Zeigegerät heißt.

user3188445
quelle