Komplexe Neubelegung der Tastatur in Linux

Komplexe Neubelegung der Tastatur in Linux

Hier ist eine weitere Frage zur Neuzuordnung von Schlüsseln in modernen Linux-Distributionen.

Hintergrund:

Ich bin seit sechs Jahren Mac-Benutzer und seit ungefähr 20 Jahren Linux-Benutzer. Dies hat zwei Probleme verursacht:

  • Das Programmieren auf einer schwedischen Tastatur auf einem Mac ist schrecklich, daher war ich gezwungen, beim Programmieren ein US-Layout zu verwenden
  • Ständiges Wechseln zwischen Tastaturlayouts unter Linux und Mac

Auf dem Mac habe ich einige Änderungen am US-Layout vorgenommen, um Zugriff auf die schwedischen Zeichen (å, ä, ö) zu erhalten. Um diese Zeichen auf einer schwedischen Tastatur zu erhalten, gibt es normalerweise drei Tasten auf der rechten Seite der Tastatur. Ich habe diese mit Ukelele neu zugeordnet, sodass sie normalerweise wie bei einem US-Layout funktionieren, aber mit gedrückter „Alt“-Taste (oder „Alt+Umschalt“) erhalte ich die schwedischen Zeichen. Nach einiger Eingewöhnungszeit funktioniert es sehr gut.

Zweitens ist es bei Linux-Benutzern durchaus üblich, die Tastenkombinationen Strg-Win-Alt neu zu belegen, sodass die Win-Taste wie eine zweite Strg-Taste funktioniert. Dadurch funktionieren die meisten Tastenkombinationen auf Mac und Linux gleich. Dafür gibt es in GNOME (oder GNOME Tweaks) eine Einstellung: „Strg wird Win und den üblichen Strg-Tasten zugeordnet.“

Die Reihenfolge ist aber immer noch nicht die gleiche wie auf einer Mac-Tastatur: Der Mac hat "Control Option Command", eine PC-Tastatur hat jedoch "Strg Win Alt". In GNOME Tweaks gibt es eine weitere Option: "Alt wird mit Win getauscht". Leider erlaubt GNOME Tweaks nur eine dieser Optionen.

Hier ist also die komplette Neuzuordnung, die ich möchte (basierend auf einem US-Layout):

  • Alt + "[" => å
  • Alt + Umschalt + "['"=> Å
  • Alt + "'" => ä
  • Alt + Umschalt + "'" => Ä
  • Alt + ";" => ö
  • Alt + Umschalt + ";" => Ö
  • Linke Strg => Linke Strg
  • Linke WIN-Taste => Linke Alt-Taste
  • Linke Alt-Taste => Linke Strg-Taste

Leider scheint es so viele Möglichkeiten zu geben, wie man das erreichen kann, und bei allen ist es ziemlich schwierig, sie richtig umzusetzen, daher wäre ich für jede Hilfe dankbar!

(Auf dem Mac konnte ich dies mit Ukelele tun, einem grafischen Tool zum Erstellen eines Tastaturlayouts, das dann installiert wird, sodass ich genauso einfach dorthin wechseln kann, wie Sie zwischen einem US-amerikanischen und einem schwedischen Layout wechseln können. Sehr schön.)

Aktualisieren:

Den Teil mit Strg/Alt/Win habe ich gelöst. Ich habe eine neue Datei erstellt (in meinem Fall „jomag“ genannt) und sie in „/usr/share/X11/xkb/symbols/“ abgelegt:

partial modifier_keys              
xkb_symbols "jomag" {     
        key <LALT> { [ Control_L, Control_L ] };     
        key <LWIN> { [ Alt_L, Alt_L ] };             
        modifier_map Control { <LALT>, <LWIN> };     
};                        

Ich habe außerdem eine Zeile zu /usr/share/X11/xkb/rules/evdev hinzugefügt:

! option     =    symbols
jomag:jomag  =    +jomag(jomag)    <--- this one

Ich bin mir jedoch nicht sicher, ob es notwendig war.

Ich habe festgestellt, dass sich die App am besten mit „setxkbmap“ laden lässt:

setxkbmap -option jomag:jomag

Zum Neuladen führen Sie es mit der Option „Leer“ aus:

setxkbmap -option
setxkbmap -option jomag:jomag

verwandte Informationen