GNU/Linux >> Tutoriales Linux >  >> Linux

¿Anular algunos códigos clave con Xkb?

Quiero mezclar algunas claves con XKB. (¿Por qué? En una computadora portátil donde algunas teclas están ubicadas de manera inconveniente). Actualmente uso xmodmap:

keycode 110 = Prior
keycode 115 = Delete
keycode 112 = Next
keycode 117 = Insert
keycode 119 = End
keycode 118 = Home

En cambio, quiero usar XKB y asignar diferentes nombres simbólicos para ciertas teclas físicas, en lugar de asignar diferentes keysyms a ciertos códigos de teclas. (Este es el motivo). Quiero que el código clave 110 envíe PGUP en lugar de HOME , código clave 115 para enviar DELE en lugar de END , etc. El resto de la configuración no debe verse afectada (por lo que PGUP es seguir enviando el keysym Prior , etc., y todas las demás claves permanecen como están).

¿Cómo puedo cambiar la asignación de estos códigos clave específicos? Cargaré un archivo con xkbcomp somefile.xkb $DISPLAY , ¿qué debo poner en somefile.xkb ?

Respuesta aceptada:

Cree un archivo que contenga los cambios de su código clave y guárdelo como (por ejemplo) ~/.xkb/keycodes/local . (Los keycodes el directorio está codificado; el directorio base puede ser otra cosa, y el nombre del archivo también.) Esto contendrá en su caso

xkb_keycodes {
  <PGUP> = 110;
  <PGDN> = 112;
  <DELE> = 115;
  <INS> = 117;
  <HOME> = 118;
  <END> = 119;
};

Para cargar esto, ejecute

setxkbmap -print | sed -e '/xkb_keycodes/s/"[[:space:]]/+local&/' | xkbcomp -I${HOME}/.xkb - $DISPLAY

Esto genera su configuración actual, agrega +local a los xkb_keycodes include y lo carga en el compilador XKB, agregando ~/.xkb a la ruta de inclusión. (Si le dio a su archivo un nombre que no sea ~/.xkb/keycodes/local , obviamente tendrás que cambiar +local y -I${HOME}/.xkb} .) De esa manera, se conservan todas las demás configuraciones.


Linux
  1. Seguimiento del kernel con trace-cmd

  2. 3 formas de eliminar todos los archivos de un directorio excepto uno o algunos archivos con extensiones

  3. Comando Nohup con ejemplos

  4. Comando JQ en Linux con ejemplos

  5. ¿Usando Notify-send con Cron?

15 comandos ps de Linux con ejemplos

Comandos de Nmap con ejemplos

Programación con cron &At

Comando de historial con ejemplos

Microservicios con Python3

Autoridad de certificación con OpenSSL