Xorg: Wie kann ich AltGr der Feststelltaste zuordnen (um Symbole der 3. Ebene umzuschalten)?

12

so viele andere brauche ich nicht CapsLock. Ich möchte es so neu zuweisen, dass es die Funktion von hat AltGr. Ich verwende Kubuntu 9.10, aber ich denke, es muss eine verteilungsunabhängige Lösung geben.

Ich habe schon versucht, setxkbmap oder zu verwenden xmodmap. Unter Verwendung von xmodmapzumindest habe ich es geschafft , dass CapsLocknach verhält sich wie Deldurch folgende diese Beschreibung .

Aber ich konnte es nicht schaffen, das AltGrVerhalten zuzuweisen CapsLock.

cknoll
quelle

Antworten:

14

Ich weiß, dass diese Frage alt ist, aber wenn jemand erneut darauf stößt, gibt es eine alternative Lösung:

setxkbmap -option "lv3:caps_switch"

Eine vollständige Liste der Optionen finden Sie im Abschnitt "OPTIONEN" von

man xkeyboard-config
Lange
quelle
6

Basierend auf Dennis 'Antwort und durch Herumspielen xevfand ich heraus, dass die magische Phrase zu sein scheint ISO_Level3_Shift.

Zumindest funktioniert das bei mir:

xmodmap -e "keycode 66 = ISO_Level3_Shift"

Jetzt bin ich nicht in Gefahr, mir beim Tippen von [,], {,} und co auf meinem deutschen Tastaturlayout die Finger zu brechen.

Bearbeiten: Jetzt mit der Option -e von xmodmap

cknoll
quelle
Vielen Dank! Ich habe genau danach gesucht, seit ich von Windows zu Ubuntu gewechselt bin. Ohne dieses JavaScript ist ein Schmerz auf einer deutschen Tastatur.
Gzost
1

Probieren Sie eines davon aus (ersetzen Sie das Keysim oder den Schlüsselcode Ihres Feststelltasten, wenn es anders ist):

xmodmap -e "keysym 0xffe5 = Mode_switch"

oder

xmodmap -e "keycode 66 = Mode_switch"
Bis auf weiteres angehalten.
quelle
Vielen Dank. Ihre Zeile hat aus zwei Gründen nicht direkt funktioniert: 1. xmodmap möchte eine Datei, daher muss ich den String weiterleiten und aus stdin lesen. 2. Mode_switch wurde erfolgreich zugewiesen, führte jedoch nicht zum Modifikator der 3. Ebene. Dann habe ich wieder mit xev gespielt. Als ich merkte, dass dort die Zeichenfolge "Mode_switch" angezeigt wird, war es einfach, AltGr zu drücken und zu prüfen, was man stattdessen an der entsprechenden Stelle lesen kann. -> ISO_Level3_Shift.
Knock
@basweber: Ich habe die -eOption vergessen . Ich habe meine Antwort bearbeitet.
Bis auf weiteres angehalten.
Ja. Das ist viel sauberer als der Rohrleitungsansatz.
cknoll
1

Longs Antwort ist die beste für moderne Desktops wie Gnome, da Gnome selbst xkb verwendet und xmodmap-Konfigurationen standardmäßig überschreibt (auch xmodmap ist auf dem Weg nach draußen und wird in Wayland nicht unterstützt). Leider funktioniert es immer noch nur bis zum Neustart.

Mit diesem Befehl können Sie diese Option dauerhaft auf Ihren Gnome-Desktop anwenden:

gsettings set org.gnome.desktop.input-sources xkb-options "['lv3:caps_switch']"

Natürlich können Sie diese Änderung auch dauerhaft und sogar systemweit vornehmen, ohne Gnome zu verwenden. Wenn Sie Gnome verwenden, sollten Sie dennoch den obigen Befehl verwenden, um zu verhindern, dass Gnome diese Einstellung überschreibt. Für Arch können Sie eine Datei /etc/X11/xorg.conf.d/90-custom-kbd.confmit folgendem Inhalt hinzufügen :

Section "InputClass"
    Identifier "keyboard defaults"
    MatchIsKeyboard "on"
    Option "XKbOptions" "lv3:caps_switch"
EndSection

Ich gehe davon aus, dass dies zwischen den Verteilungen unterschiedlich ist, sodass Ihr Kilometerstand variieren kann.

Daniel R.
quelle