
Ich versuche, mein Tastaturlayout zu verbessern, xkb
und es hat mit den standardmäßigen 4 Ebenen (oder sollte ich 2 Ebenen sagen? Ich kenne die Begriffe nicht wirklich...) prima funktioniert.
Und wenn ich eine Klammer öffne, finde ich xkb sehr schlecht dokumentiert (oder ich weiß nicht, wie ich suchen soll). Manche sprechen von Ebenen, manche von Gruppen, manche definieren Ebenen so, dass Shift die erste und AltGr die zweite ist, und andere betrachten das Basiszeichen als das erste und erhöhen dann jede Kombination. Ich meine, es gibt viele Inkonsistenzen.)
Wie dem auch sei, hier sind die vier Standard-„Kombinationen“ mit der Taste Mauf einigen Tastaturen:
// Pressing <M> <Shift+M> <AltGr+M> <Shift+AltGr+M>
key <AB07> { [ m , M , mu , mu ] }; // m M µ µ
Ist es möglich, der Mischung andere Modifikatoren hinzuzufügen?
Beispielsweise R Ctrlkann das I mit einem zusätzlichen Modifikator sechs Kombinationen haben:
// Pressing <M> <Shift+M> <AltGr+M> <AltGr+Shift+M> <RCtrl+M> <RCtrl+Shift+M>
key <AB07> { [ m , M , mu , mu , comma , semicolon] };// m M µ µ , ;
Oder sogar 8 Kombinationen mit allen drei Modifikatoren.
Und tatsächlich scheint es in einigen symbol
Dateien bereits eine 8-stufige Zuordnung mit dem SchlüsselwortEIGHT_LEVEL
Ich möchte jedoch nicht 42 Kombinationen für eine Taste erhalten.
Ich möchte lieber umständliche Kombinationen für meine Finger vermeiden und ziehe es daher vor, weiterhin nur begrenzte Kombinationen mit „direktem Zugriff“ zu haben, etwa so:
// Pressing <M> <Shift+M> <AltGr+M> <RCtrl+M> <RWin>+M
key <AB07> { [ m , M , comma , semicolon , µ ] }; // m M , ; µ
Ich würde auch gerne andere Charaktere oder sogar Moves abbilden(Pfeile, Home/Ende, Bild auf/ab)mit anderen unbenutzten Modifikatoren (Feststelltaste, Numlock)
Wie kann ich das machen ?
Vielen Dank.
Antwort1
Dort können Sie Folgendes verwenden, group
um das Ziel „mit zwei Tastenanschlägen“ zu erreichen:
key <AB07> {
type[group1]= "FOUR_LEVEL",
type[group2]= "TWO_LEVEL_BIS",
symbols[group1]= [ m , M , comma , NoSymbol],
symbols[group2]= [ semicolon , µ ]
};
Nun müssen Sie die type
TWO_LEVEL_BIS
für die Verwendung gewünschten Modifikatoren definieren.
Es ist wissenswert, dass Mode_switches sich um einen Schlüssel handelt, der die aktuelle Gruppe erhöht. Sehen Sie sich also seine Definition an.