Si quieres hacer esto en un teclado Apple, prueba esto:
echo 1|sudo tee /sys/module/hid_apple/parameters/swap_opt_cmd
Para que esto funcione para una versión inferior de Linux, puede probar esto:http://blog.chaselambda.com/2014/10/09/apple-keyboard-on-linux-3.8.html
Si solo desea intercambiar la tecla alt izquierda y la supertecla, ejecute el comando en su terminal:
setxkbmap -option altwin:swap_alt_win
Para restaurar el comportamiento predeterminado, simplemente use:
setxkbmap -option
Nota:Esto es temporal. Si desea que los efectos se agreguen permanentemente a su archivo de inicio.
Una forma de lograrlo es a través de xmodmap
. Puedes ejecutar xev
para obtener eventos clave. Al ejecutar xev
Debería aparecer un cuadro y puede enfocarlo y presionar las teclas que desea intercambiar. Debería generar detalles similares a los de Alt clave:
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
Estoy en una PC y no tengo una "Tecla de comando", pero tengo la "Clave de Windows" equivalente, y xev da:
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
Porque xmodmap no tiene idea de state
, y puede romper fácilmente las asignaciones de teclas, le sugiero que haga lo siguiente:
xmodmap -pke > defaults
Luego creamos un archivo xmodmap:
keycode 14 = Alt_L
keycode 93 = Super_L
remove Mod1 = Alt_L
remove Mod4 = Super_L
add Mod1 = Super_L
add Mod4 = Alt_L
Tenga en cuenta cómo estoy usando los códigos clave que xev
devuelto Además, aquí solo estoy reemplazando las teclas super y alt de la izquierda (y dejando las de la derecha con su comportamiento anterior). Entonces simplemente podemos ejecutar xmodmap
, para establecer estas claves:
$ 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
Puedes correr sin el -v
(detallado) interruptor para ejecución silenciosa, pero lo encuentro útil si cometió errores en su archivo modmap. Si las cosas se complican, vuelve a aplicar tus valores predeterminados:
xmodmap defaults
Modmap a menudo se ejecuta al inicio de X, por lo que puede aplicarlos como predeterminados si coloca sus comandos de modmap en ~/.xmodmaprc
.