xmodmap

Hast Du Probleme mit Hardware, die durch die anderen Foren nicht abgedeckt werden? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Ozelot
Beiträge: 1507
Registriert: 18.11.2007 09:52:58

xmodmap

Beitrag von Ozelot » 30.08.2020 08:09:16

Moin,

zwei Probleme mit xmodmap: Ich habe die linke Windowstaste umdefiniert als

Code: Alles auswählen

keycode 133 = less greater bar bar bar bar
1. Dummerweise öffnet KDE nun bei Drücken der Taste ohne Alt/Shift/Strg/AltGr weiterhin das KDE Menu (UND X gibt gleichzeitig ein "<" aus). Weiß jemand, wo ich das Öffnen des Menus unterdrücken kann? Es scheint nicht in den Hotkeys von KDE/Systemeinstellungen konfigurierbar zu sein.

2. Leider gibt auch Alt et.c + Windowstaste (oder auch andere Tasten/kombinationen testweise) kein Pipesymbol und auch sonst nichts aus. "bar" ist also wahrscheinlich falsch. Leider suche ich mir gerade erfolglos einen Wolf nach einer Tabelle mit allen keysyms. Habt Ihr Ideen, oder Links?

Benutzeravatar
hikaru
Moderator
Beiträge: 13559
Registriert: 09.04.2008 12:48:59

Re: xmodmap

Beitrag von hikaru » 30.08.2020 10:27:15

Ozelot hat geschrieben: ↑ zum Beitrag ↑
30.08.2020 08:09:16
1. Dummerweise öffnet KDE nun bei Drücken der Taste ohne Alt/Shift/Strg/AltGr weiterhin das KDE Menu (UND X gibt gleichzeitig ein "<" aus). Weiß jemand, wo ich das Öffnen des Menus unterdrücken kann? Es scheint nicht in den Hotkeys von KDE/Systemeinstellungen konfigurierbar zu sein.
Ich kenne mich mit KDE nicht aus, aber ich vermute, die Menüöffnung ist nicht an das Keysym gebunden sondern an den Keycode.
Ozelot hat geschrieben: ↑ zum Beitrag ↑
30.08.2020 08:09:16
2. Leider gibt auch Alt et.c + Windowstaste (oder auch andere Tasten/kombinationen testweise) kein Pipesymbol und auch sonst nichts aus. "bar" ist also wahrscheinlich falsch.
Was ist "Alt et.c"? "bar" ist schon richtig wenn du ein Pipe-Symbol "|" haben willst. Daneben gäbe es noch "brokenbar" "¦". Das sind normalerweie die 5. und 6. Belegungen von Keycode 94, also der Größer-/Kleiner-Taste (1. und 2. Belegung). Die 5. Belegung wird normalerweise über Alt-Gr (deutsche Tastaturbeschriftung) / ISO_Level3_Shift (Modifier-Bezeichnung) erreicht. Für die 6. Belegung muss zusätzlich die Shift-Taste gedrückt werden.
Ich vermute dein Problem ist, dass das Öffnen des KDE-Menüs die Modifiersequenz stört.

Ozelot
Beiträge: 1507
Registriert: 18.11.2007 09:52:58

Re: xmodmap

Beitrag von Ozelot » 30.08.2020 12:26:57

"etc." sollte das heißen: damit meinte ich die verschiedenen Modifier-Tasten/Kombinationen.

Leider habe ich keine größer/kleiner-Taste - umfunktionierte amerikanische Tastatur mit einer Taste weniger, daher die ganze Übung.

Vermutlich stört das Öffnen des Menus die Modifiersequenz nicht. Das Menü öffnet sich jedenfalls nur, wenn ich die so belegte Keycode-93-Taste ohne Modifyer drücke. Deswegen vermutete ich auch, daß das Ereignis von Keysm ausgelöst wird und nicht vom Keycode. Mit Shift+Keycode93Taste klappt alles und ich bekomme das ">" ohne Menüöffnung. Aber mit Alt, AltGr, jeweils plus Shift und dieser Taste bekomme ich immer nur auch "<" und ">", so als ob ich keine Modifier drücken würde. Sie funktionieren aber bei anderen Tasten - es sei denn ich belege diese mit dem Pipesymbol. Ich habe es versuchsweise auch mit der A-Taste probiert: Mit "keycode 38 = a A bar" bekomme ich bei alt+a auch kein Pipesymbol.

EDIT: Es scheint bei einer selbstgemachten xmodmap einfach nichts nach den ersten zwei Keysyms gelesen zu werden. Mit "keycode 38 = a A E bar" bekomme ich bei Alt+a auch kein E.

xev gibt mir für die Alt Taste "keycode 64 (keysym 0xffe9, Alt_L)". Das scheint zu stimmen.

Benutzeravatar
hikaru
Moderator
Beiträge: 13559
Registriert: 09.04.2008 12:48:59

Re: xmodmap

Beitrag von hikaru » 31.08.2020 14:20:34

Ich habe das gerade unter Xfce testweise nachgestellt und kann deine Beobachtung bestätigen. Super_L scheint keine höheren Modifier-Level zu akzeptieren. Ich könnte mir vorstellen dass es damit zusammenhängt, dass die Taste selbst ein Modifier (mod4) ist. Diesen Modifier zu löschen bringt aber keine Abhilfe.

Ich bin allerdings über einen anderen Ansatz zu einer Lösung gekommen, und zwar nicht über xmodmap, sondern über setxkbmap bzw. die Tastaturdefinition in /usr/share/X11/xkb/keycodes/evdev.
Die <>-Taste hat dort den Namen <LSGT> und wird auf Keycode 94 gemapt. Ändert man diesen Keycode in 133 und kommentiert die spätere Definition von <LWIN> = 133; aus, so verhält sich die linke Windows-Taste nach einem Neustart so, wie du es vermutlich willst.

Diese Lösung hat einen Schönheitsfehler, denn /usr/share/X11/xkb/keycodes/evdev ist in Debianxkb-data enthalten und die Datei zu modifizieren bedeutet, dass man das Paket eigentlich auf "hold" setzen müsste um zu verhindern, dass potenzielle Updates durch Debian die Änderung wieder rückgängig machen. Das wiederum birgt natürlich die Gefahr von zukünftigen Inkomaptibilitäten.
Ich habe allerdings auf einem meiner Systeme zwischen Squeeze und Jessie bereits in xkb-data rumgepfuscht und mir ist dabei innerhalb eines Releases noch nie ein Update des Pakets untergekommen. Hässlich ist die Lösung natürlich trotzdem.

Unter [1] wird beschrieben, wie man so eine Änderung angeblich auch ohne Eingriff ins System nur auf Basis einer User-Konfiguration machen kann. Die dafür nötige lokale Konfigurationsdatei sollte wohl so aussehen:

Code: Alles auswählen

xkb_keycodes {
  <LSGT> = 113;
};
Möglicherweise muss zusätzlich noch die <LWIN>-Definition gelöscht werden. Wie man das macht weiß ich nicht.
Wenn ich allerdings die in [1] beschriebene setxkbmap-sed-xkbcomp-Kette ausführe wirft mir das Terminal einen Haufen Fehler und zerwürgt mir einzelne Tasten. Dem nachzugehen bin ich gerade zu faul.


[1] https://unix.stackexchange.com/question ... s-with-xkb

Ozelot
Beiträge: 1507
Registriert: 18.11.2007 09:52:58

Re: xmodmap

Beitrag von Ozelot » 01.09.2020 14:31:38

Prima! Die Lösung sollte passen. Das schnell nach einem etwaigen Update wieder umzukonfigurieren sollte auch kein Problem sein. Ich machs also ohne hold.

Ozelot
Beiträge: 1507
Registriert: 18.11.2007 09:52:58

Re: xmodmap

Beitrag von Ozelot » 16.09.2020 11:04:32

Nachtrag: Ich finde gerade heraus - nach einem Reboot klappts auch mit der xmodmap: Pipesymbol mit Modifier nutzbar und KDE Menu öffnet sich nicht mehr, obwohl die Konfiguration die gleiche ist wie oben benutzt. Warum das so ist, würde mich auch interessieren.

Antworten