Intenté cambiar la tecla mod en Awesome desde la tecla de Windows a Pausa, Bloqueo de desplazamiento y Escape.
Para todas las claves intenté cambiar la entrada en el rc.lua
archivo de configuración; Intenté usar xmodmap para borrar bloqueos yadd mod4 = ...
Sin embargo, parece que no importa lo que haga, las teclas se vuelven "pegajosas" (a veces de una manera extrañamente inconsistente), es decir, si las presiono una vez, la computadora actúa como si estuvieran presionadas constantemente.
¿Existe una forma razonable de cambiar este comportamiento?
Respuesta1
Tengo un archivo con estas dos líneas en mi casa:
clear lock
keysym Caps_Lock = Super_L
Lo llaman desde mirc.luacomo esto:
awful.util.spawn("xmodmap /home/username/your_xmodmap.file")
Respuesta2
Muy tarde, pero para referencia de otros:
El problema parece ser que xmodmap no identifica ninguna de las claves que usted enumeró como claves modificadoras. Por lo tanto, AwesomeWM no permite que se utilicen como teclas modificadoras.
Puede intentar agregar la clave que desea usar como Mod3 (que no parece usarse para nada en la mayoría de los sistemas que he visto), luego su rc.lua puede enumerar la clave mod como "Mod3".
Agregar como tecla modificadora
Puedes ver tus teclas modificadoras con xmodmap
. De forma predeterminada probablemente obtendrás algo como esto:
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Alt_R (0x6c), 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)
Con xev
puedes ver el nombre de cualquier tecla que presiones mientras se está ejecutando, y para Scroll Lock, la mía aparece como:
KeyPress event, serial 36, synthetic NO, window 0x2200001,
root 0x225, subw 0x0, time 23086947, (433,729), root:(470,783),
state 0x0, keycode 78 (keysym 0xff14, Scroll_Lock), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 36, synthetic NO, window 0x2200001,
root 0x225, subw 0x0, time 23087091, (433,729), root:(470,783),
state 0x0, keycode 78 (keysym 0xff14, Scroll_Lock), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
Notarás que el nombre del símbolo de clave es Scroll_Lock
.
Para agregar a Mod3, debe crear o agregar un archivo ~/.Xmodmap
. Agregar esta línea configura Mod3 para que sea solo la tecla Scroll_Lock:
add Mod3 = Scroll_Lock
Para probar sus cambios y ver cualquier error en su archivo .Xmodmap, ejecute
xmodmap ~/.Xmodmap
Actualizando rc.lua
Como ya habrás descubierto claramente, hacia la parte superior de tu archivo rc.lua (que generalmente está en ~/.config/awesome/rc.lua
), hay una modkey = "Mod4"
línea. Cambie esto a modkey = "Mod3"
.
Advertencias
AwesomeWM utiliza la tecla Esc para una serie de asignaciones de teclas. Sugeriría probar Bloq Despl o Pausa, ya que es menos probable que haya conflictos extensos. De hecho, AwesomeWM parece asumir que Esc está reservado para cancelar la operación actual.
Scroll Lock parece ser tratado mágicamente como una tecla de bloqueo, muy parecido a Bloq Mayús. La diferencia es que el comportamiento de bloqueo de Bloq Mayús es relativamente trivial de desactivar, mientras que el Bloqueo de Desplazamiento no puede desactivar este comportamiento, hasta donde yo sé.
Sugeriría probar esto con una tecla como la tecla 0 del teclado numérico, o algo que normalmente no esté diseñado para ser una tecla de bloqueo de estado, confirme que funciona y luego intente cambiar a la tecla que desee.
Respuesta3
Sé que tengo 3 años de retraso, pero si esto ayuda a alguien, cambie
modkey = "Mod4"
con
modkey = "Mod1"