¿Dónde están los mapas de teclas en Debian? (Usando las teclas de carga para cambiar el mapa de teclas).

12

Desde la consola real (por ejemplo, Ctrl- Alt- F3), me gustaría usar sudo loadkeys dvorak como en ubuntu . Si bien eso funciona automáticamente en Ubuntu, Debian quiere que localice un archivo de mapa de teclas. No tengo el /usr/share/keymapsque a veces se da como respuesta. find / -type f -name '*dvorak*'Aparece algunos archivos que loadkeysno tomarán. Al igual que en esta otra respuesta que no quiero hacer un cambio permanente en mi sistema usando console-config. Quiero escribir scripts simples que puedan cambiar el mapa de teclas sobre la marcha.

¿Hay algún paquete que pueda instalar o algo?

Dado que me gustaría intercambiar Caps-Lock y Escape eventualmente, probablemente debería hacer mis propios mapas de teclas personalizados , de todos modos, ¿correcto?

John Baber-Lucero
fuente

Respuestas:

15

1) Asegúrese de que el console-datapaquete esté instalado:

# loadkeys dvorak
Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz

$ dpkg --search /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz
console-data: /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz

$ cat /etc/debian_version 
wheezy/sid

2) En mi humilde opinión, sí dumpkeys > test.keymap && edit test.keymap && loadkeys testes la más fácil.

barti_ddu
fuente
1

Este es un script de mi gabinete personal de envenenamiento que utilizo para hacer que CAPSLOCK sea un CTRL adicional en Debian. Debe proporcionar suficientes pistas para que pueda adaptarlo usted mismo.

Se supone que el diseño kbd 'us' se usa hasta ahora, el nuevo diseño de teclado se llamará 'sjas' aquí.

Un trazador de líneas:

apt install console-data -y; TMP=$(loadkeys us | awk {'print $2'}); TMP2=$(dirname $TMP)/sjas.kmap.gz; cp -vaf $TMP $TMP2; gzip -d $TMP2; TMP3=${TMP2%%.gz}; sed -i -e 's/us.map/sjas.map/' -e 's/.*58.*/keycode  58 = Control/' $TMP3; gzip -c $TMP3 > $TMP2; rm $TMP3; sed -i 's/"us"/"sjas"/g' /etc/default/keyboard

No en una línea, por lo que se puede leer más fácilmente:

apt install console-data -y
TMP=$(loadkeys us | awk {'print $2'})
TMP2=$(dirname $TMP)/sjas.kmap.gz
cp -vaf $TMP $TMP2
gzip -d $TMP2
TMP3=${TMP2%%.gz}
sed -i -e 's/us.map/sjas.map/' -e 's/.*58.*/keycode  58 = Control/' $TMP3
gzip -c $TMP3 > $TMP2
rm $TMP3
sed -i 's/"us"/"sjas"/g' /etc/default/keyboard

Reemplace las ocurrencias de cadena 'sjas' y 'us' con las correspondientes en qué difiere su diseño actual y cómo desea llamar al nuevo.

sjas
fuente