GNU/Linux >> Tutoriales Linux >  >> Linux

¿Reasignación de la tecla de encendido para eliminar?

Tengo un macbook pro con Ubuntu 13.10 con FluxBox. Desafortunadamente, el botón de encendido está físicamente arriba del retroceso donde esperaría que estuviera la tecla de borrar. En OS X, el programa PowerKey se puede usar para reasignar la tecla de encendido para borrar. ¿Cómo puedo hacer algo similar en X Windows?

Deshabilité la tecla de encendido editando /etc/systemd/logind.conf y configurando HandlePowerKey = ignore Después de esto, puedo presionar el botón de encendido sin apagar la computadora portátil.

Ejecutando xev -event keyboard revela que el KeyPress para la tecla de encendido normalmente está siendo consumido por otro proceso:

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

KeymapNotify event, serial 36, 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   

KeymapNotify event, serial 37, 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   

Sin embargo, al ejecutar solo xterm directamente desde la consola, pude obtener con éxito el código clave y reasignar la clave.

xinit /usr/bin/xterm -- :1
xev -event keyboard | tee /tmp/junk.txt
tail -n ???? /tmp/junk.txt
MappingNotify event, serial 28, synthetic NO, window 0x0,
    request MappingKeyboard, first_keycode 8, count 248

KeyPress event, serial 28, synthetic NO, window 0x600001,
    root 0xa1, subw 0x0, time 720369, (146,89), root:(148,91),
    state 0x0, keycode 124 (keysym 0x1008ff2a, XF86PowerOff), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 28, synthetic NO, window 0x600001,
    root 0xa1, subw 0x0, time 720369, (146,89), root:(148,91),
    state 0x0, keycode 124 (keysym 0x1008ff2a, XF86PowerOff), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

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

En este punto, también era posible mapear la clave usando xmodmap. Lo asigné a una barra invertida, que es más fácil de ver que de eliminar:

 xmodmap -e "keycode 124 = backslash bar"

Podría obtener un equivalente apenas funcional para ejecutar agregando esto a ~/.fluxbox/keys pero esto es feo y lo suficientemente lento como para ser inutilizable.

  # Remap the power off to a delete key...
  XF86PowerOff :Exec xdotool key Delete

¿Cómo puedo usar xmodmap o setxkbmap para usar el botón de encendido al mismo tiempo que un administrador de ventanas normal?

Respuesta aceptada:

No entiendo exactamente la oración final, pregunta, pero puedo relacionarme con el título de la pregunta:"Reasignación de la tecla de encendido para eliminar".

Intente reemplazar cualquier "XF86PowerOff" o solo el correspondiente a su teclado con "Eliminar" en /usr/share/X11/xkb/symbols/inet.

Relacionado:Kernel panic cada hora más o menos "UPSB:error de encendido del rayo" desde que actualicé a High Sierra.

Debe repetir esto después de una actualización del sistema que actualice ese archivo.


Linux
  1. Poder (Shell) para la gente

  2. Gpg:¿Cancelado por el usuario?

  3. ¿Cómo reasignar la tecla Numlock para eliminarla?

  4. 16.04 ¿Eliminar clave no funciona?

  5. Cómo eliminar todas las líneas de un archivo en Vim

Soy un usuario de POWER

Cómo generar una clave SSH en Windows 10

Cómo eliminar una partición en Linux

Cómo eliminar líneas en Vim / Vi

Cómo eliminar un repositorio y una clave GPG en Ubuntu

Crear un servidor en la nube