Ich mag das Einfügen mit der mittleren Maustaste nicht, da ich in Eclipse häufig nicht kompilierbaren Code erhalte. Wie kann ich das ausschalten (in allen Programmen)? Ich leite Fedora.
Ich mag das Einfügen mit der mittleren Maustaste nicht, da ich in Eclipse häufig nicht kompilierbaren Code erhalte. Wie kann ich das ausschalten (in allen Programmen)? Ich leite Fedora.
Antworten:
Diese Lösung funktioniert global und behält die Funktionalität der mittleren Maus bei.
Installieren xbindkeys xsel xdotool
Legen Sie dies in ~/.xbindkeysrc
"echo -n | xsel -n -i; pkill xbindkeys; xdotool click 2; xbindkeys"
b:2 + Release
Neu laden xbindkeys -p
Beim xbindkeys
Start ausführen, um pkill xbindkeys
zu stoppen.
In Fedora 24 können Sie gnome-tweak-tool
mit dem folgenden Befehl installieren :
$ sudo dnf install gnome-tweak-tool
Öffnen gnome-tweak-tool
Sie die Registerkarte "Tastatur und Maus" und deaktivieren Sie "Einfügen mit mittlerer Maustaste".
Das Einfügen der mittleren Taste ist ein Unix-Benutzerschnittstellenstandard, bei dem die linke Taste ausgewählt oder aktiviert wird und die rechte Taste etwas anderes ausführt (z. B. Erweitern, Umschalten, Aufrufen eines Menüs usw.). Sie werden feststellen, dass es in den meisten Unix-Anwendungen an das Einfügen gebunden ist.
Wenn Ihr Problem darin besteht, dass Ihre Maus überempfindlich ist, wenn Sie Ihren Finger auf das Rad legen, empfehle ich Ihnen, eine bessere Maus zu kaufen. Es gibt viele billige anständige Mäuse.
Sie können die Maustaste 2 einer anderen Nummer zuweisen. Anwendungen identifizieren die linke, mittlere und rechte Maustaste als Tasten 1, 2 bzw. 3. Fügen Sie diesen Code in ein Skript ein, das ausgeführt wird, wenn Ihre X-Sitzung gestartet wird (dies hängt von Ihrer Desktop-Umgebung ab).
echo 'pointer = 1 6 3 4 5' | xmodmap -
Scrollrad-Mäuse unterstützen beim Drücken des Scrollrads ein Klickereignis mit der mittleren Maustaste. Dies ist eine großartige Funktion, die Sie jedoch möglicherweise irritiert. Zum Glück kann es deaktiviert werden.
Zunächst müssen Sie die ID der Maus wie folgt kennen:
$ xinput list | grep 'id='
was druckt so etwas wie
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ PixArt Dell MS116 USB Optical Mouse id=12 [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)]
Video Bus id=7 [slave keyboard (3)]
Power Button id=8 [slave keyboard (3)]
Sleep Button id=9 [slave keyboard (3)]
Dell KB216 Wired Keyboard id=10 [slave keyboard (3)]
Dell KB216 Wired Keyboard id=11 [slave keyboard (3)]
Eee PC WMI hotkeys id=13 [slave keyboard (3)]
Meine Dell Usb-Maus hat hier gedruckt, für die ID = 12
So kann ich die Zuordnung meiner Maustaste wie folgt anzeigen:
$ xinput get-button-map 12
welche druckt
1 2 3 4 5 6 7 8 9 10 11 12
hier haben nur die ersten drei zahlen für mich bedeutung. Sie repräsentieren die linke, mittlere und rechte Maustaste.
Ich kann die mittlere Maustaste ausschalten, indem ich sie auf 0 setze:
$ xinput set-button-map 12 1 0 3
Oder ich verwandle die mittlere Maustaste in eine linke Maustaste, indem ich sie auf 1 setze:
$ xinput set-button-map 12 1 1 3
ref. Link https://wiki.ubuntu.com/X/Config/Input
es funktioniert bei mir (kubuntu 18.04 LTS)
xinput set-button-map 12 1 0 3
Sie alle Tasten (1 - 12 für in dieser Exampe xinput set-button-map 12 1 0 3 4 5 6 7 8 9 10 11 12
)
Hier ist, was Sie tun können, wenn Sie die Funktion für mittlere Klicks beibehalten möchten (zum Beispiel zum Öffnen von Links in neuen Registerkarten), ohne Dinge einzufügen.
Installieren Sie zuerst sxhkd und xsel .
Dann konfigurieren Sie ./.config/.sxhkd/sxhkdrc wie folgt
~button2
echo -n | xsel -n -i
~control + c
echo -n | xsel -n -i
~control + shift + c
echo -n | xsel -n -i
~control + x
echo -n | xsel -n -i
Und das war's auch schon.
Starten Sie nun sxhkd (oder konfigurieren Sie es so, dass es beim Start gestartet wird). Jetzt fügt die mittlere Maus nichts mehr ein, sondern funktioniert ansonsten wie gewohnt.
~/.config/sxhkd/sxhkdrc
Es ist eine übliche Konvention, an die sich viele Programme halten. Es gibt keine globale Möglichkeit, es zu deaktivieren. Sie müssen dies Programm für Programm durchführen.
BEARBEITEN: (Kurz, wie Gilles sagt, Maus-Taste 2 deaktivieren. Aber einige Programme haben andere Verwendungen für Maus-Taste 2, also würde ich dies nicht empfehlen.)
BEARBEITEN: Ich habe gerade ein Problem mit der von mir geposteten Lösung gefunden: In einigen Programmen ( gitk
zumindest nicht sicher, wie häufig es ist) funktioniert die Textauswahl nicht. Probieren Sie es aus, aber wenn Sie Probleme mit der Auswahl von Text in einem Programm haben, das Sie regelmäßig verwenden, besteht die Lösung darin, die Verwendung dieses Programms zu beenden.
Installieren Sie xsel
das folgende Shell-Skript, und führen Sie es aus:
#!/bin/sh
while true; do
xsel -fin </dev/null
done
Solange dieses Skript ausgeführt wird (Sie können festlegen, dass es beim Anmelden ausgeführt wird), wird die mittlere Maustaste in keine Anwendung eingefügt. So technisch wird es immer noch einfügen, aber es wird immer nichts zum Einfügen geben.
Die Art und Weise, wie es funktioniert, ist, dass es ausgeführt wird xsel
und -i
den Inhalt von kopiert ( ) /dev/null
, ohne in den Hintergrund zu -n
treten ( ) und diese leere Zeichenfolge tatsächlich im Puffer zu halten, anstatt sie nur zu löschen und zu beenden ( -f
). Jedes Mal, wenn es beendet wird, wird es xsel
mit denselben Optionen erneut aufgerufen. Da so lange ausgeführt xsel
wird, bis ein anderes Programm durch Kopieren von etwas anderem "die Pflicht entlastet", werden nicht ständig neue Prozesse erstellt. Stattdessen wird ein einzelner Prozess so lange ausgeführt, bis er erneut benötigt wird. (Es sei denn, Sie haben mehrere Instanzen des Skripts ausgeführt, dies ist jedoch nicht erforderlich.)
Nein, dies beeinträchtigt nicht das normale Kopieren / Einfügen, da beim Einfügen mit mittlerem Klick eine separate Zwischenablage verwendet wird.
Das ist mein Drehbuch. Möglicherweise müssen Sie die Einstellungen anpassen
#!/bin/bash
clear
echo
echo
echo
echo -----Now fixing your scroll button --- -hold onto pants
echo
xinput --list|grep "Virtual core XTEST pointer"
echo ---------------------------------------------------------------------------------
echo
id=$(
xinput --list|grep "Virtual core XTEST pointer" |awk '{
for(i=1; i<=NF; i++) {
tmp=match($i, /id=[0-9]+/)
if(tmp) {
print $i
}
}
}' $1 | tr -d '[:alpha:]='
)
echo fixing $id:
xinput set-button-map $id 1 10 2 4 5 6 7 8 9 3
echo
echo
xinput get-button-map $id
echo ---------------------------------------------------------------------------------