Die Tastatur, die ich zu erstellen versuche, hat viel Unicode und sieht folgendermaßen aus:
Mit dem folgenden Tutorial nicht erfolgreich sein:
- https://help.ubuntu.com/community/Howto%3A%20Custom%20keyboard%20layout%20definitions
(Das Tutorial enthält einige Fehler und verwendet eine ungenaue Sprache wie "Ausschneiden" anstatt "Löschen" , und es ist seltsam formatiert)
Ich habe mich gefragt, ob jemand so freundlich sein könnte, ein besseres Tutorial mit schrittweisen Anleitungen zu erstellen.
keyboard-layout
Akiva
quelle
quelle
Antworten:
In Ubuntu 14.04 werden Tastaturlayouts beibehalten
/usr/share/X11/xkb/symbols/
Jede der Dateien in diesem Verzeichnis enthält eine Reihe von Einträgen des folgenden Typs:
Dieser Eintrag ordnet eine Taste auf der Tastatur unter Verwendung der folgenden Konventionen einer Reihe von bestimmten Zeichen zu:
< A C01> Der erste Buchstabe
A
zeigt , dass wir in dem alphanumerischen Tastenblock suchen (andere Optionen sindKP [for keypad]
undFK [for Function Key]
);<A C 01> Der zweite Buchstabe
C
gibt die Zeile an, die von der Unterseite an gezählt wird, in der sich der Schlüssel befindet. (Bei einer Standardtastatur in den USA befindet sich die Leertaste in einer ReiheAA
und die Zehnertastatur in einer ReiheAE
).<AC 01 > Die Zahlen
01
geben die Position des Schlüssels an, zählen von links und ignorieren speziell benannte Schlüssel wie TABoder ~(Tilde): BefindetAC01
sich in der dritten Zeile oben, erste Taste von links (ignorieren Caps Lock, falls vorhanden); Auf einer Standard-US-Tastatur ist dies die mit „a“ gekennzeichnete Taste.Die Klammern enthalten die Liste der Zeichen, die jeder Taste zugewiesen sind. Dieser enthält bis zu vier durch Kommas getrennte Einträge:
Das Erstellen einer benutzerdefinierten Tastaturbelegung ist so einfach wie das Ersetzen der Zeichen, die Sie in einer bestimmten Zeile nicht benötigen, durch die von Ihnen gewünschten Zeichen!
Zum Beispiel:
Als Angelsächsiker tippe ich
á
undÁ
viel seltener als ichæ
undÆ
.Um die angelsächsischen Zeichen zu meiner Liste hinzuzufügen, ersetze ich einfach
aacute
undAacute
durch die Entitätsnamen oder Unicode-Codepunkte füræ
undÆ
("aelig" oder U00E6 bzw. "AElig" oder U00C6 ):oder
Wenn ich mit dem Ändern meines Tastaturlayouts fertig bin, speichere ich die Datei unter einem neuen Namen, "oe", im selben Verzeichnis.
Hinzufügen eines neuen Tastaturlayouts zur
evdev.xml
Datei.Um ein neues Tastaturlayout zu verwenden, müssen wir sagen,
X11
dass es existiert. In Ubuntu 14.04 werdenX11
die installierten Tastaturen in einer/usr/share/X11/xkb/rules/evdev.xml
Datei gespeichert. Fügen wir dann das neue Layout hinzu.X11/xkb/rules/evdev.xml
In einem Editor öffnenGehe zum Ende des
<layoutList>
Abschnitts (suche nach</layoutList>
). Fügen Sie nach dem letzten</layout>
Tag Folgendes ein , in demX
sich der Dateiname Ihres Tastaturlayouts befindet/usr/share/X11/xkb/symbols
(in meinem Falloe
).Y
ein passender Kurzname; undZ
ein geeigneter langer Name in einer oder mehreren Sprachen undaaa
ein Recht drei Buchstaben (ISO 639-2) Sprachcode (zB eng für Englisch):Hier ist es, folgen Sie der vollständigen Einführung
Andere verwandte Links:
http://ubuntuforums.org/showthread.php?t=188761&p=1092145#post1092145 http://www.charvolant.org/~doug/xkb/html/index.html
quelle
Hinweis : Wayland verwendet xkb, aber viele xTools funktionieren nicht mehr ordnungsgemäß (z. B. xdotool).
Hinweis : Dies ist ein nicht erschöpfendes Tutorial. Es ist am nützlichsten für eine Person, die ein neues Layout mit acht Ebenen erstellen und die Syntax verstehen möchte.
Hinweis: Es wird eine schnelle und schmutzige Lösung bereitgestellt. Es enthält eine Tabelle, die den benötigten Code automatisch generiert.
Grundlegendes zum XKB-Verzeichnis
Wichtig, wenn Sie die Modifikatortasten anpassen möchten.
Wichtig, wenn Sie eine nicht standardmäßige Tastaturhardware entwerfen.
Sie müssen dies definieren
Beispiel: Macintosh-Tastaturen verstehen die Leertaste als
57
. Wir schreiben es aber als<SPCE>
Hier definieren wir unser benutzerdefiniertes Layout.
Internes Verhalten von Modifikatoren (Shift, Control, Alt ...)
Arbeitsablauf
keycodes > symbols > compat
Ich berühre nur
symbols
: Siehe unten für die schnelle und schmutzige Lösung.Symbolkarten
/symbols/us Jede Datei in diesem Verzeichnis folgt der gleichen Struktur.
partial - Keine vollständige Tastaturbelegung
alphanumeric_keysAbschnitt der Tastatur, die zugeordnet wird. Es können mehrere Tastaturen verwendet werden.
Hinweis: Wenn keine
*_keys
angegeben sind, wird eine vollständige Tastatur vorausgesetzt."basic" - Der Name der Symbolkarte
name[Group1]= "US/ASCII";Verleiht dieser Tastaturgruppe einen eindeutigen Namen.
modifier_mapZum Bearbeiten von Modifikatortasten . (Strg, Umschalt, Alt ~)
Shift { Shift_L, Shift_R };Normalerweise nicht notwendig. Es ordnet beide Schichten dem Shift-Modifikator zu, auch bekannt als Level 2.
key <TLDE> Der Tilde-Schlüssel - Normalerweise oben links rechts über Tab
key <AE01> Illustration - Bestehend aus drei Teilen,AE01
A= alphanumerischer Schlüsselblock.
KP= Tastatur
FK= Funktionstaste
E= Zeile auf der Tastatur.
Space Key= Arow
Shift Key= Brow
Caps Lock= Crow
Tab Key= Drow
01= Position des Schlüssels in der Reihe.
AE01= 1
AB02= X
AC05=G
[+ ]- In C-Sprachen; Eckige Klammern kennzeichnen eine Liste, nach der die Elemente aufgeteilt werden ,. Die Länge der Liste bestimmt die Anzahl der Ebenen. Zum Beispiel:
Normalerweise bezeichnen die Ebenen den folgenden Tastendruck mit:
Kurz gesagt, wenn Sie eine Taste Shift + Altgr zuordnen möchten, müsste Ihre Liste mindestens vier Elemente lang sein.
WARNUNG - Häufige Fehler
Jede dieser Zeilen verursacht einen kritischen Fehler und lässt Sie ohne verwendbare Tastatur zurück:
Backspace
sollte seinBackSpace
: Achten Sie besonders auf die Rechtschreibung.VoidSymbol
.Beste Sicherheitsmaßnahme!
Sichern Sie Ihre Datei, die Sie bearbeiten:
sudo /bin/cp /usr/share/X11/xkb/symbols/us /usr/share/X11/xkb/symbols/usBACKUP
Erstellen Sie ein Skript, das Sie ohne root-Passwort ausführen können
So etwas wie:
Wenn etwas schief geht, verwenden Sie Ihre Maus, um diese Codezeile auszuführen (enthalten in dem Bash-Skript, für das Sie sudoers die Berechtigung erteilt haben. Denken Sie daran
chmod +x
, die Ausführung als ausführbare Datei zuzulassen.)Sicherungsstrategien zur Wiederherstellung eines defekten Systems
return
(Drücken der Eingabetaste) einen Zeilenumbruch einfügen.Schnelle und schmutzige Lösung
(
!
WirdU0021
). Unicode unterstützt!VoidSymbol
.sudo vim /usr/share/X11/xkb/symbols/us
Interessante Linien:
quelle