Ich kann xmodmap verwenden, um die Feststelltaste neu zuzuordnen, sodass sie als Steuertaste oder als Escape-Taste fungiert. Ich möchte beide Funktionen wie folgt kombinieren:
Wenn ich die Feststelltaste drücke und dann loslasse, wird Escape gesendet. Wenn ich die Feststelltaste gedrückt halte und eine andere Taste drücke (z. B. A), wird Control-A gesendet.
Gibt es eine Kombination aus xkb, xmodmap und etwas anderem, durch die sich die Feststelltaste in X so verhält?
Ich verwende Ubuntu Precise auf einem Macbook Air 3,1.
Ich habe dieses Setup auf meinem Mac und ich hatte versucht, einen Weg für Ubuntu zu finden, ohne Glück.
Nun, es funktioniert jetzt. Danke, Tungd, dass du mich zu Xcape geschickt hast . Was ich getan habe, ist wirklich einfach und unkompliziert.
Unter Systemeinstellungen> Tastaturlayout> Optionen ...> Strg-Taste habe ich "Feststelltaste als Strg" aktiviert.
xcape -e 'Control_L = Escape'
Wenn Sie dies tun, fungiert die Feststelltaste als Strg-Taste, wenn Sie sie wie einen Modifikator verwenden, und als Esc-Taste, wenn Sie sie alleine drücken (es gibt eine geringfügige Verzögerung von einigen hundert Millisekunden, wie in der README-Datei von xcape vermerkt) KeyRemap4MacBook.)
quelle
gnome-tweak-tool
zu mappenCaps Lock
,Ctrl
da es keinKeyboard layout
inSystem Settings
auf Ubuntu 14.04 gibt. Dannxcape -e 'Control_L=Escape'
hat nicht funktioniert, aber nach der Verwendungxcape -d
Ich habe entdeckt , dassCaps Lock
keycode 66 und remapped sie jeweils erzeugt:xcape -e '#66=Escape'
.setxkbmap -option 'caps:ctrl_modifier'
xcape -e 'Caps_Lock=Escape'
setxkbmap -option 'caps:ctrl_modifier'
xcape -e 'Caps_Lock=Escape;Control_L=Escape;Control_R=Escape'
Ich suche das auch. Seit einer Woche habe ich selbst eine Teillösung gefunden mit
xmodmap
:Dies funktioniert natürlich nicht perfekt, es sendet effektiv Escape und Ctrl gleichzeitig, wenn ich CapsLock drücke, aber ich war eine Weile damit zufrieden.
Schließlich fand ich dieses kleine Dienstprogramm https://github.com/alols/xcape . Jetzt kann ich CapsLock einfach neu mit Ctrl verknüpfen und xcape seinen Job machen lassen.
quelle
BEARBEITEN: Dies wurde für die meisten intelligenten (neueren) Display-Manager behoben.
Per Louis und Sergiy habe ich mir eine Lösung ausgedacht, die für mich unter Ubuntu 16.04 (Xenial) mit LightDM und Unity funktioniert.
Ich füge die folgende Codezeile in meine
.xprofile
Datei in meinem Home-Verzeichnis ein.Das nachfolgende & stellt den Befehl xcape in den Hintergrund, damit Ihre Sitzung nicht blockiert wird. Die setxkbmap nimmt ihre Änderung sofort vor.
Sergiy:
Louis:
quelle
Installieren
xcape
Fügen Sie die beiden Zeilen in Ihrem ein
~/.bashrc
Beachten Sie das Teil
-t 100
, wenn Sie es nicht einstellen, können Sie eine Verzögerung in Esc bemerken, wenn Sie vim verwenden.quelle
sudo apt-get install xcape
(Tippfehler)Ich habe speziell für diesen Zweck ein Tool in C erstellt, das viele der Probleme mit der xcape / xmodmap-Lösung löst :
quelle