Zuerst müssen wir eine alte Eingabehilfenerweiterung für X installieren, die xkbset heißt . In Ubuntu oder Debian nur sudo apt-get install xkbset
. Die ursprüngliche Idee dieser Software ist es, Unterstützung für Personen zu bieten, die möglicherweise nicht in der Lage sind, eine Maus oder Tastatur so gut zu verwenden. Sie ermöglicht daher beispielsweise MouseKeys (Steuern des Cursors mit dem Nummernblock) und StickyKeys (Drücken der Umschalttaste, Abheben, Tippen) einen Brief, erhalten Sie ein Kapital) und SlowKeys (registrieren Sie einen Tastendruck erst nach einer bestimmten Zeit). Aber wir werden es verwenden, um mit MouseKeys eine Tastaturtaste einer Maustaste zuzuordnen.
Zuerst werden wir alle Dinge zur Cursorsteuerung los, damit Sie weiterhin Ihren Nummernblock verwenden können. Bearbeiten Sie als Root die Datei
/usr/share/X11/xkb/compat/mousekeys
und entfernen Sie alles zwischen
interpret.repeat= False;
und // New Keysym Actions
. Beachten Sie, dass hier unten einige neue "Keysym" -Aktionen zugeordnet sind, insbesondere die aufgerufene
Pointer_Button2
.
Als Nächstes erstellen wir ein Skript, um xkbset zu konfigurieren, MouseKeys einzuschalten, es nach einer gewissen Zeit der Inaktivität nicht auszuschalten und einen Schlüssel Ihrer Wahl dem mittleren Klick zuzuordnen. Hier ist mein ~/.middle-click.sh
:
#!/bin/bash
# set XKB layout
setxkbmap -layout us
# turn on mousekeys
xkbset m
# stop mousekeys expiring after a timeout
xkbset exp =m
# map keysym to other keysym
xmodmap -e "keysym Menu = Pointer_Button2"
# this also works
# xmodmap -e "keycode 135 = Pointer_Button2"
Dadurch wird die Menütaste (zwischen Rechts-Alt und Rechts-Strg auf meiner Tastatur, sieht aus wie ein Menü mit einem Mauszeiger) der Maustaste 2 zugeordnet, bei der es sich um einen mittleren Klick handelt. Beachten Sie, dass ich auch jede andere Taste auf der Tastatur verwenden kann, indem ich die keysym
Zeile auskommentiere und die keycode
Zeile verwende. Die Tastencodes unterscheiden sich von Tastatur zu Tastatur. Um den Schlüsselcode der gewünschten Taste zu erhalten, führen Sie sie xev
in einem Terminal aus, drücken Sie die gewünschte Taste und beobachten Sie die Terminalausgabe.
Für Mac-Benutzer ist Linksklick die Schaltfläche 1 und Rechtsklick die Schaltfläche 3. Wenn ich einen Mac verwenden würde, würde ich Button2 den rechten Befehl und Button3 die rechte Option zuordnen. Ich hoffe, die rechte Seite dieser Schaltflächen hat einen anderen Schlüsselcode als die linke Seite. Wenn nicht, habe ich von Leuten gelesen, die F11 und / oder F12 verwenden. man xmodmap
Hier erfahren Sie, wie Sie einen Modifikator wie Cmd + F12 verwenden können, wenn Sie dies wünschen.
Unter Gnome verwende ich System -> Einstellungen -> Sitzungen, um dieses Skript beim Anmelden zu starten, sodass ich mich nicht erneut darum kümmern muss. Vergessen Sie nicht, Ihr Skript mit ausführbar zu machenchmod +x ~/.middle-click.sh