Wo sind die Keymaps in Debian? (Verwenden von Loadkeys zum Ändern der Keymap.)


12

Von der eigentlichen Konsole (zB Ctrl- Alt- F3) möchte ich wie sudo loadkeys dvorak in Ubuntu verwenden . Während das in Ubuntu automatisch funktioniert, möchte Debian, dass ich eine Keymap-Datei finde. Ich habe nicht das /usr/share/keymaps, was manchmal als Antwort gegeben wird. find / -type f -name '*dvorak*'Es werden einige Dateien angezeigt, die loadkeysnicht benötigt werden. Wie in dieser anderen Antwort ich nicht will , eine dauerhafte Veränderung zu meinem System machen verwenden console-config. Ich möchte einfache Skripte schreiben, die die Keymap im laufenden Betrieb ändern können.

Gibt es ein Paket, das ich installieren kann oder so?

Da ich Caps-Lock und Escape irgendwann austauschen möchte, sollte ich wahrscheinlich trotzdem meine eigenen Keymaps erstellen, richtig?

Antworten:


15

1) Stellen Sie sicher, dass das console-dataPaket installiert ist:

# 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, ja dumpkeys > test.keymap && edit test.keymap && loadkeys testist das einfachste.


1

Dies ist ein Skript aus meinem persönlichen Giftschrank, mit dem ich CAPSLOCK dauerhaft zu einer zusätzlichen STRG auf Debian mache. Es sollte genügend Hinweise enthalten, damit Sie es selbst weiter anpassen können.

Es wird davon ausgegangen, dass bis jetzt das 'us'-kbd-Layout verwendet wird. Das neue Tastaturlayout wird hier' sjas 'heißen.

Einzeiler:

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

Nicht in einer Zeile, daher kann es leichter gelesen werden:

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

Ersetzen Sie die Zeichenfolgen 'sjas' und 'us' durch solche, bei denen sich Ihr aktuelles Layout unterscheidet und wie Sie Ihr neues aufrufen möchten.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.