Estoy ejecutando Kubuntu 19.10 (KDE + i3wm) en mi ASUS FX505DT.
La cuestión
Puedo vincular la XF86RFKill
clave usando i3wm, bindsym
pero este enlace no parece anular el enlace incorporado de Linux que alternaModo avión.
Comportamiento del problema
Esto es lo que xev
regresa 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 7
el 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 XF86RFKill
de 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 i3wm
alternan 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_wireless
El 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 -pke
muestra una lista de todas las asignaciones de teclas.