Où sont les keymaps dans Debian? (Utilisation des touches de chargement pour changer le clavier.)


12

De la console réelle (par exemple Ctrl- Alt- F3), je voudrais utiliser sudo loadkeys dvorak comme dans ubuntu . Bien que cela fonctionne automatiquement par Ubuntu, Debian veut que je trouve un fichier de keymap. Je n'ai pas la /usr/share/keymapsréponse qui est parfois donnée. find / -type f -name '*dvorak*'retourne quelques fichiers qui loadkeysne prendront pas. Comme dans cette autre réponse, je ne veux pas apporter de modification permanente à mon système en utilisant console-config. Je veux écrire des scripts simples qui peuvent changer le clavier à la volée.

Y a-t-il un package que je peux installer ou quelque chose?

Puisque j'aimerais éventuellement permuter Caps-Lock et Escape, je devrais probablement faire mes propres keymaps personnalisés , de toute façon, n'est -ce pas?

Réponses:


15

1) Assurez-vous que le console-datapackage est installé:

# 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) À mon humble avis, oui dumpkeys > test.keymap && edit test.keymap && loadkeys testest le plus simple.


1

Ceci est un script de mon armoire à poison personnelle que j'utilise pour faire de CAPSLOCK une CTRL supplémentaire sur Debian. Il devrait fournir suffisamment d'indices pour que vous puissiez l'adapter davantage vous-même.

Il est supposé que la disposition kbd «us» est utilisée jusqu'à présent, la nouvelle disposition du clavier sera appelée «sjas» ici.

Bon mot:

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

Pas sur une seule ligne, donc cela peut être lu plus facilement:

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

Remplacez les occurrences de chaîne 'sjas' et 'us' par en conséquence où votre disposition actuelle diffère et comment vous voulez appeler la nouvelle.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.