Wenn Sie dies auf einer Apple-Tastatur tun möchten, probieren Sie Folgendes aus:
echo 1|sudo tee /sys/module/hid_apple/parameters/swap_opt_cmd
Damit dies für eine niedrigere Version von Linux funktioniert, können Sie Folgendes ausprobieren:http://blog.chaselambda.com/2014/10/09/apple-keyboard-on-linux-3.8.html
Wenn Sie nur die linke Alt- und die Super-Taste tauschen möchten, führen Sie den Befehl in Ihrem Terminal aus:
setxkbmap -option altwin:swap_alt_win
Um das Standardverhalten wiederherzustellen, verwenden Sie einfach:
setxkbmap -option
Hinweis:Dies ist vorübergehend. Wenn Sie die Effekte dauerhaft haben möchten, fügen Sie sie Ihrer Startdatei hinzu.
Eine Möglichkeit, dies zu erreichen, ist über xmodmap
. Sie können xev
ausführen wichtige Ereignisse zu erhalten. Beim Ausführen von xev
Ein Kästchen sollte erscheinen und Sie können es fokussieren und die Tasten drücken, die Sie tauschen möchten. Es sollte ähnliche Details wie für Alt ausgeben Schlüssel:
KeyPress event, serial 28, synthetic NO, window 0x8800001,
root 0x25, subw 0x0, time 2213877115, (126,91), root:(1639,475),
state 0x0, keycode 14 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
Ich bin auf einem PC und habe keine "Befehlstaste", aber die entsprechende "Windows-Taste", undxev gibt:
KeyPress event, serial 28, synthetic NO, window 0x8000001,
root 0x25, subw 0x0, time 2213687746, (111,74), root:(1624,98),
state 0x0, keycode 93 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
Denn xmodmap hat keine Ahnung von state
, und Tastenzuordnungen leicht brechen können, schlage ich vor, dass Sie Folgendes tun:
xmodmap -pke > defaults
Dann erstellen wir eine xmodmap-Datei:
keycode 14 = Alt_L
keycode 93 = Super_L
remove Mod1 = Alt_L
remove Mod4 = Super_L
add Mod1 = Super_L
add Mod4 = Alt_L
Beachten Sie, wie ich die Schlüsselcodes xev
verwende ist zurückgekommen. Auch hier ersetze ich nur die linken Super- und Alt-Tasten (und belasse die rechten bei ihrem alten Verhalten). Dann können wir einfach xmodmap
ausführen , um diese Tasten zu setzen:
$ xmodmap -v modmap.file
! modmap:
! 1: keycode 14 = Alt_L
keycode 0xe = Alt_L
! 2: keycode 93 = Super_L
keycode 0x5d = Super_L
! 3: remove Mod1 = Alt_L
! Keysym Alt_L (0xffe9) corresponds to keycode(s) 0xe
remove mod1 = 0xe
! 4: remove Mod4 = Super_L
! Keysym Super_L (0xffeb) corresponds to keycode(s) 0x5d
remove mod4 = 0x5d
! 5: add Mod1 = Super_L
add mod1 = Super_L
! 6: add Mod4 = Alt_L
add mod4 = Alt_L
!
! executing work queue
!
keycode 0xe = Alt_L
keycode 0x5d = Super_L
remove mod1 = 0xe
remove mod4 = 0x5d
add mod1 = Super_L
add mod4 = Alt_L
Sie können ohne -v
laufen (ausführlich) Schalter für Silent Running, aber ich finde es nützlich, wenn Sie Fehler in Ihrer Modmap-Datei gemacht haben. Wenn die Dinge chaotisch werden, wenden Sie einfach Ihre Standardeinstellungen erneut an:
xmodmap defaults
Modmap wird oft beim Start von X ausgeführt, daher können Sie diese als Standard anwenden lassen, wenn Sie Ihre Modmap-Befehle in ~/.xmodmaprc
einfügen .