Ich habe ein X11-Programm, das die Feststelltaste greift und es verwendet. Das Problem ist, dass ich das normale Umschalten der Feststelltaste deaktivieren möchte, aber dies scheint den Schlüssel zu deaktivieren.
Was auch immer X11 für einen Feststelltastendruck erhält, muss es dennoch erhalten (kein Deaktivieren des Schlüssels oder erneutes Zuordnen zu einem anderen Schlüssel), aber ohne dass irgendetwas den Tastendruck in einen Feststelltaster umwandelt (der sich möglicherweise auf Kernelebene befindet). ).
Ich habe versucht, den Scancode zu ändern, aber dies hat nur den Schlüssel neu zugeordnet. Ich habe den Capslock-Eintrag mit xmodmap
ebenfalls entfernt, aber dadurch auch Caps deaktiviert.
Wie kann ich den Kernel anweisen, die Feststelltaste zu ignorieren (bezüglich ihrer regulären Funktionalität), aber die Nachricht trotzdem an X weiterzuleiten?
Nur um ein bisschen mehr Details hinzuzufügen:
Das Programm, das ich ausführen möchte, ist "enso". Wenn es keinen Schlüssel gibt, erhalte ich die Fehlermeldung "CRITICAL: root: Quasimode-Schlüssel nicht gefunden". Wenn es keinen Fehler gibt, kann ich enso mit Großbuchstaben verwenden, aber bis jetzt habe ich noch nicht herausgefunden, wie die Großbuchstabenfunktion deaktiviert werden kann, während enso noch in der Lage ist, darauf zuzugreifen.
setxkbmap -option ctrl:nocaps
remaps anControl_L
, zum Beispiel.Antworten:
Ich glaube, ich habe eine Technik zum Deaktivieren des Umschaltens der CapslockTaste, aber nicht zum vollständigen Deaktivieren der Taste insgesamt oder zum erneuten Zuordnen zu einer anderen Taste auf der Tastatur.
Wenn Sie den Befehl verwenden:
Die Tastatur schaltet nicht mehr um. Ich habe dies auf meinem Laptop mit Fedora 14 bestätigt, die LED leuchtet nicht mehr und die normale CapslockFunktionalität ist weg.
Die Verwendung von xev zeigt jedoch weiterhin, dass die Taste gedrückt wird:
Die Ereignisse, bei denen die Taste gedrückt wird, bleiben also intakt, damit andere Anwendungen sie abrufen können.
setxkbmap
Die Datei
/usr/share/X11/xkb/rules/xorg.lst
enthält die vollständige Liste der Optionen, die Sie angeben könnensetxkbmap
.Beim Durchsuchen dieser Datei nach "cap" ist mir folgende Zeile aufgefallen:
Diese Datei enthält noch weitere Werte. Wenn dies nicht das ist, wonach Sie streben, könnte stattdessen einer dieser alternativen Werte verwendet werden.
Verweise
quelle
setxkbmap -option ""
.Wenn Sie nicht möchten, dass die Caps LockTaste wie gewohnt wirkt, können Sie den
Lock
Modifikator unter Beibehaltung desCaps_Lock
Keysyms ausschalten .quelle
Dies ist sehr ähnlich zu der Antwort, die ich auf eine andere Frage gegeben habe . Dieser Ausschnitt aus dem xkb-Code sollte den Trick machen.
quelle