it-swarm.com.de

Wie tausche ich die Feststelltaste und die Esc-Taste programmgesteuert aus?

Ich bin ein schwerer Vim-Benutzer und eines der ersten Dinge, die ich tue, wenn ich an einer sauberen Ubuntu-Installation arbeite, ist das Vertauschen der Feststelltasten und Esc-Tasten, um Handbewegungen über der Tastatur zu reduzieren.

Bisher habe ich es über den Tastaturkonfigurationsdialog gemacht, aber jetzt schreibe ich eine Reihe von Skripten, die Ubuntu so einrichten, wie ich es mag, und ich konnte kein scriptable oder programmierbares finden Möglichkeit, dieses Konfigurationselement zu ändern.

Ich bin nicht auf der Suche nach Optionen, mit denen die Tasten auf einer anderen Ebene als dem Gnom selbst vertauscht werden können. Ich suche also nach einer Möglichkeit, diese Änderung zu skripten und sie in der Tastaturkonfiguration anzuzeigen, die ich früher verwendet habe, falls ich mich dazu entscheide Stellen Sie es in Zukunft manuell wieder her.

18
Jacobo de Vera

Sie können dies über die GUI tun, indem Sie das Kontrollfeld Keyboard Preferences (unter System -> Preferences) öffnen und die Registerkarte Layout auswählen. Klicken Sie auf die Schaltfläche Options..., um das Dialogfeld mit den Layoutoptionen zu öffnen. Erweitern Sie den Abschnitt Caps Lock key behaviour und wählen Sie Swap ESC and Caps Lock aus.

Es gibt einige Möglichkeiten, wie Sie solche Dinge schreiben können.

Direkt über Xkb

Wir können die Änderung direkt mit dem Folgenden vornehmen:

setxkbmap -option caps:swapescape

Sie können alle aktuellen Layoutoptionen deaktivieren (wodurch die Feststelltaste auf das Standardverhalten zurückgesetzt wird):

setxkbmap -option ''

Über GConf

Das Bedienfeld für Tastatureinstellungen speichert seine Konfiguration über gconf, wobei das Layout tatsächlich von gnome-settings-daemon angewendet wird. Daher können Sie gnome-settings-daemon veranlassen, das Layout anzupassen, indem Sie gconf selbst aktualisieren.

Die relevante Einstellung in diesem Fall scheint /desktop/gnome/peripherals/keyboard/kbd/options zu sein. So können Sie die Option einstellen mit:

gconftool-2 --set /desktop/gnome/peripherals/keyboard/kbd/options \
    --type list --list-type string \
    '[caps<tab>caps:swapescape]'

Im obigen Beispiel sollte <tab> ein literales Tabulatorzeichen anstelle von Leerzeichen sein. Sie können das Verhalten wieder deaktivieren, indem Sie den gconf-Schlüssel auf eine leere Liste setzen.

22