Onde estão os mapas de teclado no Debian? (Usando loadkeys para alterar o mapa de teclas.)

10

Do console real (por exemplo, Ctrl - Alt - F3 ), eu gostaria de usar sudo loadkeys dvorak como no ubuntu . Enquanto isso funciona automaticamente no Ubuntu, o Debian quer que eu localize um arquivo de mapa de teclado. Eu não tenho o /usr/share/keymaps que às vezes é dado como uma resposta. find / -type f -name '*dvorak*' mostra alguns arquivos que loadkeys não aceita. Como em esta outra resposta eu < em> não quer fazer uma alteração permanente no meu sistema usando console-config . Eu quero escrever scripts simples que podem mudar o mapa de teclado na hora.

Existe algum pacote que eu possa instalar ou algo assim?

Desde que eu gostaria de trocar Caps-Lock e Escape eventualmente, eu provavelmente deveria crie meus próprios mapas de teclado personalizados , de qualquer forma, correto?

    
por John Baber-Lucero 03.09.2012 / 15:15

2 respostas

14

1) Verifique se console-data package 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) IMHO, sim dumpkeys > test.keymap && edit test.keymap && loadkeys test é o mais fácil.

    
por 05.09.2012 / 11:49
1

Este é um script do meu gabinete de envenenamento pessoal que eu uso para tornar permanentemente o CAPSLOCK um CTRL adicional no debian. Ele deve fornecer dicas suficientes para que você possa adaptá-lo ainda mais.

Supõe-se que o layout kbd 'us' seja usado até agora, o novo layout de teclado será chamado 'sjas' aqui.

Oneliner:

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

Não está em uma linha, por isso pode ser lido mais facilmente:

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

Substitua ocorrências de strings 'sjas' e 'us' por correspondências onde o layout atual seja diferente e como você deseja chamar o novo.

    
por 01.04.2017 / 22:13