Mittlere Maustaste deaktivieren

17

Also habe ich versucht, die verschiedenen anderen Fragen durchzugehen, aber sie konzentrieren sich hauptsächlich auf das Deaktivieren der mittleren Mauspaste.

Grundsätzlich ist die mittlere Maustaste meines Logitech G500s defekt und es klickt immer wieder nach dem Zufallsprinzip, so dass es keine Chance mehr gibt, etwas zu tun.

Gibt es eine Möglichkeit, es zu deaktivieren? Oder auf nichts abbilden?

Danke und Entschuldigung, wenn dies ein Duplikat ist.

xinput list Ausgabe:

⎡ Virtual core pointer id=2 [master pointer (3)]
⎜   ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜   ↳ Turtle Beach Turtle Beach PX3 (XBOX) id=8 [slave pointer (2)]
⎜   ↳ Logitech G500s Laser Gaming Mouse id=9 [slave pointer (2)]
⎜   ↳ Logitech G500s Laser Gaming Mouse id=10 [slave pointer (2)]
⎜   ↳ Razer Razer DeathStalker id=12 [slave pointer (2)]
⎜   ↳ Razer Razer DeathStalker id=13 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
    ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
    ↳ Power Button id=6 [slave keyboard (3)]
    ↳ Power Button id=7 [slave keyboard (3)]
    ↳ Razer Razer DeathStalker id=11 [slave keyboard (3)]
Tom Hamilton Stubber
quelle
Führen Sie diesen Befehl aus xinput list | grep 'id='und senden Sie die Ausgabe.
Helio
Für diese Maus gibt es zwei Geräte-IDs für diese Maus. Nach dem Ausführen von xinput test 9 lautet die ID meiner mittleren Maustaste 2
Tom Hamilton Stubber

Antworten:

24

Führen Sie diese Befehle aus:

xinput set-button-map 9 1 0 3
xinput set-button-map 10 1 0 3

Erklärung (freundlicherweise gespendet von @Yehosef ):

Die erste Zahl ist die ID des Zeigers (häufig haben Sie nur eine, in diesem Fall waren es zwei, 9 und 10).

Die nächsten Zahlen entsprechen denen, die Sie mit der ersten, zweiten und dritten Maustaste (dh mit der linken, mittleren und rechten Maustaste) eingeben. Die "1 0 3" gibt an, dass die linke Taste einen Linksklick ausführen soll (Aktion 1), die mittlere Taste nichts tun soll und die rechte Taste einen Rechtsklick ausführen soll (Aktion 3). Wenn Sie möchten, dass der mittlere Knopf auch einen Linksklick ausführt, können Sie "1 1 3" verwenden. Wenn Sie die rechte und linke Aktion wechseln möchten, können Sie "3 0 1" verwenden. Weitere Informationen finden Sie unter https://wiki.ubuntu.com/X/Config/Input .

Helio
quelle
Vielen Dank, der Versuch, dies nachzuschlagen, wurde sehr frustrierend.
Tom Hamilton Stubber
1
Vielen Dank! Für diejenigen, die sich fragen, sind die 9/10 die Eingabe-ID der Maus und die 1 0 3 die Zuordnungen für die erste, zweite und dritte Maustaste. Wenn Sie möchten, dass alle Tasten dasselbe tun, können Sie 1 1 1 verwenden, oder wenn Sie die rechte und linke Taste
vertauschen
@ Yehosef: Danke! Ich habe nicht erklärt, was passiert, wenn das OP die Befehle ausführt. Bitte erstelle eine neue ausführliche Antwort, schicke mir einen Ping und ich stimme zu. Dies ist eine interessante Erklärung.
Helio
@ Helio Ich habe keine andere Antwort - nur eine Erklärung für die Interessenten. Vielleicht möchten Sie Ihre Antwort bearbeiten, um diese Informationen einzuschließen, die Sie können. Ich habe darüber nachgedacht, Ihre Antwort zu bearbeiten - aber es gefällt mir im Allgemeinen nicht, wenn Leute meinen Antworten zusätzliche Details hinzufügen - also habe ich darauf verzichtet :)
Yehosef
2
Wie bestimme ich die erste Zahl? Ich renne xinput list | grep 'id='und suche nach Dingen, die am ehesten meiner Maus / meinem Touchpad ähneln. Irgendeine endgültige Methode, um festzustellen, ob es die richtige ist?
Kvothe
2

Die folgenden Anweisungen basieren auf Informationen im Ubuntu-Wiki .

Ermitteln Sie zunächst die ID des Zeigers, indem Sie die Eingabegeräte auflisten:

xinput list | grep 'id='

Und suchen Sie nach der Zeile, die den Namen Ihres Zeigers enthält. Dort sollte auch die ID des Geräts direkt nach "id =" stehen. Die ID dieses Geräts lautet beispielsweise 10:

Lenovo ThinkPad Compact USB Keyboard with TrackPoint    id=10   [slave  pointer  (2)]

Rufen Sie als Nächstes die aktuelle Tastenbelegung des Geräts ab (ich verwende die ID meines Geräts (10)):

xinput get-button-map 10

Ausgabe:

1 2 3 4 5 6 7 8 9

Dies ist die Zuordnung von Zeigertasten zu Aktionen, wobei die Zahl den Aktionscode und die Positionstaste darstellt.

Wir interessieren uns für die zweite Karte - Nummer 2 entspricht der Aktion "Mittlerer Knopfklick" und deren Position - dem tatsächlichen mittleren Knopf.

Um das Auslösen einer Aktion durch die mittlere Taste zu deaktivieren, verwende ich den Befehl xinput set-button-mapmit der ID des Geräts und der aktualisierten Karte (neuer Aktionscode ist 0 - keine Aktion). Keine Notwendigkeit, die gesamte Karte zu platzieren - die Karte reicht aus, bis der interessierte Button ausreicht (der Rest wird einfach nicht aktualisiert):

 xinput set-button-map 10 1 0

Das ist es.

Ego
quelle
Dies funktionierte für mein Touchpad auf einem Lenovo Thinkpad T580 mit Ubuntu 18.04
Russell England
0

set-button-mapDeaktiviert die Mittlere-Klick-Funktion. Um einen Mittelklick mit der linken und rechten Maustaste zu emulieren (so dass Sie Tabulatoren usw. mit der Maus einfügen und öffnen können), aber Mausradklicks zu deaktivieren, können Sie libinput patchen:

--- a/src/evdev.c   2019-09-22 17:15:13.498880044 +0300
+++ a/src/evdev.c   2019-09-22 17:15:18.062860221 +0300
@@ -1861,6 +1861,8 @@
    /* Logitech Marble Mouse claims to have a middle button */
    if (device->model_flags & EVDEV_MODEL_LOGITECH_MARBLE_MOUSE)
        libevdev_disable_event_code(device->evdev, EV_KEY, BTN_MIDDLE);
+
+   libevdev_disable_event_code(device->evdev, EV_KEY, BTN_MIDDLE);
 }

 static void
  • mkdir deb; cd deb; apt source libinput; sudo apt build-dep libinput
  • Speichern Sie den obigen Patch als libinput-1.XX.Y/debian/patches/middle.diff
  • hinzufügen middle.diffzudebian/patches/series
  • dpkg-buildpackage -us -uc -b
  • sudo dpkg -i ../libinput10_*.deb
  • Starten Sie Xorg neu oder starten Sie den Computer neu

Verwenden Sie xinput listund xinput set-prop 11 "libinput Middle Emulation Enabled" 1, um die linke und rechte Emulation zu aktivieren. 11ist die Gerätenummer von xinput listund Sie können den Befehl set-prop hinzufügen ~/.xstartup.

Um eine Neuerstellung zu vermeiden, verwenden Sie eine libinput .quirks-Datei (nicht getestet):

[My Mouse]
MatchUdevType=mouse
AttrEventCodeDisable=BTN_MIDDLE;
patraulea
quelle