Wie verwende ich das aktuelle Tastaturlayout für Tastaturkürzel in i3?

Wie verwende ich das aktuelle Tastaturlayout für Tastaturkürzel in i3?

Ich habe gerade i3 mit der Standardkonfiguration installiert, und es gibt einegroßes Problem mit Tastaturkürzeln: Obwohl mein Tastaturlayout nicht QWERTY ist, sind die Tastenkombinationen den entsprechenden QWERTY-Tasten zugeordnet. Ich muss also Win+die Taste mit der Aufschrift „F“ im QWERTY-Layout drücken, um ein Fenster im Vollbildmodus anzuzeigen, obwohl das Drücken dieser Taste ein „u“ erzeugt (im Dvorak-Layout). Wie kann ich das umgehen, damit das Drücken von Win+ ffunktioniert?beliebigLayout,ohne dass eine separate Konfiguration pro Layout erforderlich ist?

Antwort1

Kurze Antwort:

Wenn Sie die Standardkonfiguration verwenden möchten, können Sie einfach kopieren /etc/i3/config( ~/.config/i3/configoder ~/.i3/configersetzen Sie das bereits Vorhandene, um Verwirrung zu vermeiden).

Lange Antwort:

i3unterstützt die Konfiguration von Tastaturkürzeln durchTastensymbolesowie durchSchlüsselcodes.

  • Tastensymbolesind die Zeichen, die bei einem Tastendruck gesendet werden und von der Tastaturbelegung abhängen. Sie werden mit dem bindsymSchlüsselwort verknüpft. Um beispielsweise toggle fullscreenan die Kombination aus Winund der Taste zu binden, diesendet ein "f"Sie würden verwenden:

     bindsym Mod4+f fullscreen toggle
    

    Diese Methode eignet sich für die Verwendung mit Mnemotechniken (FVollbild, reSGröße usw.) und Sie können die gewünschte Tastenkombination sofort finden, indem Sie einfach in die Konfiguration schauen. Wenn Sie jedoch zwischen Tastaturlayouts wechseln, kann sich die Taste auch verschieben. Auch wenn Sie zwischen verschiedenen Alphabeten wechseln, wird nicht jedes Symbol in beiden Layouts dargestellt.

  • Tastencodesrepräsentieren die physische Taste auf der Tastatur und hängen nicht vom Tastaturlayout ab, sondern nur vom Tastaturmodell (z. B. pc104, pc105). Um toggle fullscreenan die Kombination von Winund die Taste zu binden, dieist gekennzeichnet alsFauf einer US-Tastatur (Grundreihe, linker Zeigefinger):

     bindcode Mod4+41 fullscreen toggle
    

    Bei dieser Methode bleiben die Tastenkombinationen bei unterschiedlichen Tastaturlayouts an derselben physischen Stelle. Dies ist besonders nützlich, wenn Sie manchmal zwischen Layouts wechseln, Ihre Tastenkombinationen aber hauptsächlich aus dem Muskelgedächtnis finden. Andererseits ist die Konfiguration nicht sehr lesbar ( fvs. 41).

Je nach persönlicher Vorliebe möchten Sie vielleicht eine der beiden Methoden wählen. Sie können sie sogar mischen, müssen aber darauf achten, dass Sie dieselbe Taste nicht zweimal zuweisen, z. B. bindsym f …und bindcode 41 …gleichzeitig.

Normalerweise i3enthalten Pakete eine Standardkonfiguration für jede Methode. /etc/i3/configfor bindsymund /etc/i3/config.keycodesfor bindcode. Wenn i3keine Benutzerkonfiguration gefunden wird, bietet es an, eine mit zu erstellen i3-config-wizard. Dadurch wird die config.keycodesStandardkonfiguration übernommen und alle bindcodeKonfigurationen durch die entsprechenden bindsymKonfigurationen des aktuellen Tastaturlayouts ersetzt. Dadurch wird sichergestellt, dass sich alle Tasten an derselben Position befinden wie indas Benutzerhandbuchund dass die Konfigurationsdatei gleichzeitig leicht verständlich ist. Der Nachteil ist natürlich, dass einige Mnemoniken nicht funktionieren, wenn Sie kein QWERTY- oder QWERTZ-Layout verwenden.


Mein persönlicher Vorschlag wäre, einen (langen) Blick auf dieBedienungsanleitungund verwenden Sie die Standardkonfiguration nur als Ausgangspunkt, um Ihre eigene Konfiguration zu erstellen, die zu Ihrem Arbeitsablauf und Ihren Vorlieben passt.

verwandte Informationen