Stellen Sie Sonderzeichen auf US-Tastatur und Wayland zur Verfügung

2486
frans

Ich habe eine US-Tastatur und ein Layout, aber manchmal brauche ich deutsche Sondertasten (äÄöÖüÜß). Natürlich könnte ich das Tastaturlayout wechseln, wenn ich es brauche, aber ich habe diese völlig nutzlose Feststelltaste missbraucht, um auf die Zeichen zuzugreifen, die ich mit folgendem Code benötige ~/.Xmodmap:

keycode 66 = Mode_switch Multi_key keycode 20 = minus underscore ssharp keycode 34 = bracketleft braceleft udiaeresis Udiaeresis keycode 47 = semicolon colon odiaeresis Odiaeresis keycode 48 = apostrophe quotedbl adiaeresis Adiaeresis 

Aus irgendeinem seltsamen Grund hat sich das Tastaturverhalten geändert, als Fedora zu Wayland wechselte. Jetzt funktioniert meine (magische) Tastaturbelegung nur manchmal und die Feststelltaste wirkt wieder als Schließfach :(

Gibt es einen Wayland awareAnsatz, (deutsche) Sonderzeichen auf einer US-Tastatur verfügbar zu machen? (Oder alternativ []{}|<>mit einem Tastendruck auf einer deutschen Tastatur verfügbar machen )

5

2 Antworten auf die Frage

6
quixotic

Wayland verwendet XKB, aber wie Ihr Layout auf dem Compositor basierend angeben variiert (Sie können nicht verwenden setxkbmapoder xkbcompwie in Xorg). Sie werden wahrscheinlich die wollen altgr-intlVariante des Standard - usLayouts (US internationales Layout) und möglicherweise einige Optionen: Compose (aka Multi_key), vielleicht auf einem Menütaste? AltGr auf der rechten Alt-Taste? (Die intlVariante ist ähnlich, enthält jedoch Deadkeys auf Level 1; altgr-intlsetzt Deadkeys auf Level 3, sodass sie nicht zur Verfügung stehen, aber immer noch zugänglich sind.)

Bei diesem Layout und dieser Variante stehen die meisten der aufgelisteten Symbole unter den Tasten AltGr oder Compose zur Verfügung:

AltGr+q = ä AltGr+Shift+a = Ä Compose+",a = ä Compose+",A = Ä AltGr+p = ö AltGr+Shift+p = Ö Compose+",o = ö Compose+",O = Ö AltGr+y = ü AltGr+Shift+y = Ü Compose+",u = ü Compose+",U = Ü AltGr+s = ß Compose+s,s = ß 

Für Weston würden Sie folgende Einstellungen hinzufügen $HOME/.config/weston.ini:

[keyboard] keymap_rules=evdev keymap_layout=us keymap_variant=altgr-intl keymap_options=compose:menu,level3:ralt_switch 

Für sway (ähnlich wie bei i3) müssen Sie vor der Ausführung Umgebungsvariablen festlegen, die entweder in der Befehlszeile oder in einem Hilfsskript miteinander verkettet sind:

#!/bin/sh export XKB_DEFAULT_LAYOUT=us export XKB_DEFAULT_VARIANT=altgr-intl export XKB_DEFAULT_OPTIONS=compose:menu,level3:ralt_switch sway 

Unter GNOME müssen Sie Ihren Favoriten gsettingsoder Ihr dconfFrontend konsultieren . Sie können XKB-Optionen in /org/gnome/desktop/input-sources/xkb-optionsund bestimmte Layouts in angeben /org/gnome/desktop/input-sources/sources. (Diese können sich seit der Veröffentlichung geändert haben; überprüfen Sie Ihre vorhandenen Einstellungen.)

gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us+altgr-intl')]" gsettings set org.gnome.desktop.input-sources xkb-options "['compose:menu','lv3:ralt_switch']" 

KDE verwendet ein eigenes grafisches Bedienfeld. Sie finden es unter Systemeinstellungen> Hardware> Eingabegeräte> Tastatur . Auf der Registerkarte " Layouts " können Sie die altgr-intlVariante konfigurieren (diese wird als "English (International AltGr dead keys)" aufgeführt). Die XKB-Optionen sind auf der Registerkarte " Erweitert" aufgeführt .

Bei aktuellen KDE-Frameworks 5 speichert dieses Bedienfeld die Einstellungen in $HOME/.config/kxkbrc.


Wenn Ihr System systemd's verwendet localectl, versuchen Sie vielleicht, das einzustellen, was Sie möchten, und GNOME / KDE kann es von dort abholen. Das mag Xorg derzeit nur auf den Punkt bringen, aber ich mag es als Rückfall, und ich hoffe, dass Wayland Compositors es in zukünftigen Versionen verwenden wird, um systemweite Präferenzen zu übernehmen.

sudo localectl set-x11-keymap us pc105 altgr-intl compose:menu,level3:ralt_switch (format: [layout] [model] [variant] [options]) 
Modding `org.gnome.desktop.input-sources.xkb-options` mit` compose: menu` via dconf-Editor funktionierte für mich, tyvm lkraav vor 6 Jahren 0
Vielen Dank. Ich würde es vorziehen, "Windows-Stil" zu komponieren, bei dem es nicht erforderlich ist, eine Compose-Taste zu drücken. Dies ist jedoch ausreichend, und ich könnte lernen, die Taste der dritten Ebene zu verwenden. Rolf vor 6 Jahren 0
Ich bin mir nicht sicher, was du mit "Windows-Stil" meinst, sorry. Wenn Sie sich auf "deadkeys" beziehen (dh drücken Sie "", dann "e", um "é" zu erhalten), ist dies die Variante "intl" und nicht "altgr-intl". Bei Deadkeys müssen Sie zweimal den Deadkey drücken, um das eigentliche Symbol zu erhalten, was für mich umständlich ist. quixotic vor 6 Jahren 0
0
Jeff Zeitlin

Eine Möglichkeit könnte sein, Ihre Standardtastatur von Englisch (USA) auf Englisch (International) zu ändern. Ich mache dies auf allen Computern, über die ich ausreichend Kontrolle habe, und ich kann einige Interpunktionen als "tote Tasten" Akzente verwenden, um allgemeine nicht-englische Zeichen zu erhalten.

Unter Windows wird die rechte Alt-Taste in AltGr konvertiert. Durch die Kombination dieser Tastenkombination mit bestimmten Tastenkombinationen werden verwandte nicht-englische Zeichen verwendet, z Edh und andere.

Bei "dead-key" werden die meisten Interpunktionen als Akzente verwendet. Um E-Akute zu erhalten, tippen Sie 'dann e; o-akut 'dann o, a-grab' dann a, u-umlaut 'dann u usw. Um die Interpunktion zu erhalten, drücken Sie entweder ein Zeichen, mit dem es nicht als Akzent kombiniert ist, oder drücken Sie die Leertaste - ein Apostroph ist 'dann Leerzeichen; eine doppelte Anführungszeichen / Zoll-Markierung ist' dann Leerzeichen und so weiter. Es ist eine kleine Anpassung, aber viel einfacher als das Speichern von Alt-Codes (unter Windows) oder das ständige Wechseln zwischen Layouts.

(Ich habe dies seither in Linux-Mint erledigt; modulo einige geringfügige Unterschiede, wo sich einige der AltGr-Zeichen befinden, es hat den gleichen Effekt - aber es ist kein Wayland ).

Ich weiß nicht, warum Sie gewählt wurden ... frans vor 6 Jahren 0
@frans - Meh. Vermutlich, weil "Wayland" Linux ist und ich die US-I-Tastatur unter Windows beschrieben habe. Jeff Zeitlin vor 6 Jahren 0
Ich wünschte, ich könnte das unter Linux tun. Rolf vor 6 Jahren 0
@Rolf - Ich habe es seitdem in Linux Mint gemacht, aber ich müsste den Laptop ausgraben, wenn ich nach Hause komme, und erinnere mich daran, wie es ist - es ist nicht, Wayland, aber es stimmt weitgehend mit meiner obigen Beschreibung überein . Jeff Zeitlin vor 6 Jahren 0