xmodmap-Lösung
Ich denke, Sie können dies mit xmodmap tun , einem Tool zum Ändern von Keymaps. Da meine Tastatur keine richtige SuperTaste hat, kann ich diese Lösung nicht bestätigen. Bitte hinterlassen Sie einen Kommentar, wenn sie nicht funktioniert.
Alle Schritte werden in einem Terminal ausgeführt
Drucken Sie die aktuelle Modifikatorzuordnung
Ausführen
xmodmap
Dies sollte die aktuelle Modifikator-Map drucken, die so etwas mögen sollte
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
Die wichtige Zeile ist die mod4
Zeile. Diese Zeile zeigt, welche Schlüsselcodes den Schlüsselsymbolen Super_L und Super_R zugeordnet sind.
Sichern der Schlüsselzuordnung
Bevor wir etwas ändern, ist es eine gute Idee, die aktuelle Schlüsselzuordnung zu sichern. Wir können dies mit tun
xmodmap -pke > ~/.xmodmap.orig
Wenn etwas schief geht, können Sie einfach tippen
xmodmap ~/.xmodmap.orig
um Ihre ursprüngliche Schlüsselkarte wiederherzustellen. (Wenn Sie einige schwerwiegende Fehler gemacht haben und nicht mehr richtig tippen können, funktioniert auch ein Neustart.)
Überprüfen der aktuellen Schlüsselzuordnung für die Super Schlüssel
Unter der Annahme, dass die SuperSchlüssel aufeinanderfolgende Schlüsselcodes haben (in diesem Fall 0x85 und 0x86), können wir die aktuelle Zuordnung durch Ausführen überprüfen
xmodmap -pke | grep -wA1 $((0x85))
Natürlich sollten Sie die 0x85 durch den Schlüsselcode ändern, den Sie aus Ihrer Modifikator-Map haben. Das sollte dir geben
keycode 133 = Super_L NoSymbol Super_L
keycode 134 = Super_R NoSymbol Super_R
(das $((0x85))
konvertiert die Hexadezimalzahl in eine Dezimalzahl)
Kopieren Sie das Verhalten von links Super nach rechts Super
Wie Sie aus dem vorherigen Schritt sehen können, hat der rechte SuperSchlüssel den Schlüsselcode 134, aber wir möchten, dass er das Verhalten des linken SuperSchlüssels mit dem Schlüsselcode 133 hat. Wir können dies tun, indem wir den Schlüssel mit neu zuordnen
xmodmap -e "keycode 134 = Super_L NoSymbol Super_L"
Überprüfen, ob es funktioniert
Wenn Sie es jetzt tun
xmodmap -pke | grep -wA1 $((0x85))
Das solltest du sehen
keycode 133 = Super_L NoSymbol Super_L
keycode 134 = Super_L NoSymbol Super_L
Dies bedeutet, dass beide Schlüssel jetzt dasselbe Verhalten haben. Auch die Modifikatorzuordnung sollte sich in der Zeile mit geändert haben mod4
, wir können dies durch Ausführen überprüfen
xmodmap | grep 'mod4'
was geben sollte
mod4 Super_L (0x85), Super_L (0x86), Super_L (0xce), Hyper_L (0xcf)
Und natürlich sollten auch die von Ihnen erwähnten Verknüpfungen funktionieren!
Festlegen der Zuordnung
Wenn dies funktioniert, können Sie sicherstellen, dass diese Einstellungen beim Booten automatisch angewendet werden. Lauf
echo 'keycode 134 = Super_L NoSymbol Super_L' >> ~/.xmodmaprc
um Ihre benutzerdefinierte Schlüsselzuordnung in der Datei zu speichern ~/.xmodmaprc
. Lauf
echo 'xmodmap ~/.xmodmaprc' >> ~/.xsessionrc
um sicherzustellen, dass die benutzerdefinierte Schlüsselzuordnung ausgeführt wird, wenn Ihr Fenstermanager geladen wird.
Settings Manager -> Keyboard
es eine Option wieexo-open --launch TerminalEmulator
? Wenn ja, was steht in der zweiten Spalte, Verknüpfung?