¿Cómo evitar que la pulsación de tecla XF86RFKill habilite el modo avión de Linux?

¿Cómo evitar que la pulsación de tecla XF86RFKill habilite el modo avión de Linux?

Estoy ejecutando Kubuntu 19.10 (KDE + i3wm) en mi ASUS FX505DT.

La cuestión

Puedo vincular la XF86RFKillclave usando i3wm, bindsympero este enlace no parece anular el enlace incorporado de Linux que alternaModo avión.

Comportamiento del problema

Esto es lo que xevregresa cuando presiono Fn+ F12, lo que se supone que activa XF86RFKill:

MappingNotify event, serial 48, synthetic NO, window 0x0,
    request MappingKeyboard, first_keycode 8, count 248

FocusOut event, serial 48, synthetic NO, window 0x7a00001,
    mode NotifyGrab, detail NotifyAncestor

FocusOut event, serial 48, synthetic NO, window 0x7a00001,
    mode NotifyUngrab, detail NotifyPointer

FocusIn event, serial 48, synthetic NO, window 0x7a00001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 48, synthetic NO, window 0x0,
    keys:  1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

Mientras probaba varias cosas, descubrí que mi computadora portátil tiene un dispositivo de entrada separado para esta tecla de función, como se muestra en xinput list:

$ xinput list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ ELAN1200:00 04F3:30BA Mouse               id=12   [slave  pointer  (2)]
⎜   ↳ ELAN1200:00 04F3:30BA Touchpad            id=13   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Asus Wireless Radio Control               id=7    [slave  keyboard (3)]
    ↳ Video Bus                                 id=8    [slave  keyboard (3)]
    ↳ Power Button                              id=9    [slave  keyboard (3)]
    ↳ Sleep Button                              id=10   [slave  keyboard (3)]
    ↳ USB2.0 HD UVC WebCam: USB2.0 HD           id=11   [slave  keyboard (3)]
    ↳ Asus WMI hotkeys                          id=14   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=15   [slave  keyboard (3)]

Además confirmé esto presionando Fn+ F12durante xinput test 7el comando, que se registró correctamente:

$ xinput test 7
key press   255 
key release 255 
key press   255 
key release 255 

Lo que quiero

Quiero cambiar la combinación de teclas de la tecla Fn+ F12, o XF86RFKillde Linux a i3wm. Tengo el script para alternar el modo avión y lo he enlazado usando:

bindsym XF86RFKill exec --no-startup-id toggle-airplane

El enlace de i3 funciona, pero el problema es que **tanto Linux como i3wmalternan el modo avión cuando se presiona la tecla, por lo que no se hace nada debido a dos alternancias sucesivas.

La corrienteModo avión, implementado por KDE, en realidad tiene errores ya que no recuerda los dispositivos apagados antes de encenderlos.Modo avión, y por lo tanto enciende todos los dispositivos de radio, aunque inicialmente estuvieran apagados, después de desactivarlos.Modo avión. Escribí un script bash para lograr mi objetivo y de ahí la motivación para vincular esta clave manualmente.

Actualización 1:

Después de investigar y explorar un poco, descubrí queasus_wirelessEl módulo del kernel es responsable de este comportamiento. Simplemente poner el módulo en la lista negra funciona, pero mi computadora portátil ya no detecta la pulsación de tecla. ¿Es posible de alguna manera conservar la pulsación de tecla desactivando la tecla de acceso rápido?

Respuesta1

No soy un experto en este tema, pero esto funcionó para mí. Quizás también pueda ayudarte. Para deshabilitar la entrada que habilita el modo avión, ejecute en la terminal:

xmodmap -e 'keycode 255='

Fuente:¿Cómo deshabilitar una tecla del teclado en Linux (Ubuntu)?

Además, el comando xmodmap -pkemuestra una lista de todas las asignaciones de teclas.

información relacionada