Ubuntu 13.10 1 (und möglicherweise der vorgelagerte Gnom) hat einen sehr ärgerlichen Fehler verursacht : Durch Drücken der Tastenkombination für den Tastaturlayoutschalter wird der Fokus auf ein Systemfenster und dann wieder auf das Fenster verschoben, in dem die Tastenkombination gedrückt wurde. Einige Anwendungen müssen bestimmte Aktionen ausführen, um den Fokus zu ändern, z. B. Twitter (im Browser) schließt das Eingabefeld für Antworttext, wenn der Fokus verloren geht usw. Daher ist Ubuntus systemeigener Tastaturumschalter für mich nicht geeignet, bis er behoben ist.
X hat einen eingebauten Umschaltmechanismus, und es ist viel besser, zusätzlich dazu, dass es keine Fokusumschaltung beinhaltet, schaltet es sofort um (der Gnome-Umschalter bleibt manchmal auch zurück).
Wie kann ich xkbmap-Optionen einrichten, damit die Einstellungen nach dem Neustart erhalten bleiben und von Gnome nicht zurückgesetzt werden?
Was ich versucht habe:
Führen Sie zunächst nur setxkbmap aus:
setxkbmap -layout "us,ru"
setxkbmap -option "grp:caps_toggle,grp_led:scroll,compose:ralt"
Aber es funktioniert nur:
- Für die aktuelle Sitzung
- Bis Gnome es überschreibt (z. B. wenn Sie etwas in gconfs
org.gnome.desktop.input-sources
Auslöser-Reset berühren ).
Zweitens: Hinzufügen von xkb-Optionen zur Xorg-Konfiguration:
Eine andere Möglichkeit ist, Folgendes zu xorg config hinzuzufügen:
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "us,ru"
Option "XkbModel" "pc105"
Option "XkbVariant" "pc105"
Option "XkbOptions" "grp:rctrl_toggle,grp_led:scroll"
EndSection
Xorg versteht, dass beim Start:
[ 33.791] (**) Option "xkb_rules" "evdev"
[ 33.791] (**) Option "xkb_model" "pc105"
[ 33.791] (**) Option "xkb_layout" "us,ru"
[ 33.791] (**) Option "xkb_variant" "pc105"
[ 33.791] (**) Option "xkb_options" "grp:rctrl_toggle,grp_led:scroll"
Die Konfiguration wird jedoch später zurückgesetzt, wahrscheinlich von Gnome.
Drittens gconf
Ich habe xkb-options
und sources
setze ein org.gnome.desktop.input-sources
, aber Gnome setzt xkb immer noch auf ein einzelnes englisches Layout:
$ setxkbmap -print -verbose 10
Setting verbose level to 10
locale is C
Trying to load rules file ./rules/evdev...
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules: evdev
model: pc105
layout: us
options: grp_led:scroll
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete+ledscroll(group_lock)
symbols: pc+us+inet(evdev)
geometry: pc(pc105)
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete+ledscroll(group_lock)" };
xkb_symbols { include "pc+us+inet(evdev)" };
xkb_geometry { include "pc(pc105)" };
};
Viertens eine weitere Option in gconf
Einstellung org.gnome.settings-daemon.peripherals.keyboard
funktioniert bei mir auch nicht. Nichts verändert sich.
Update 1 : Es gibt Diskussionen , die das Entfernen empfehlen /usr/lib/gnome-settings-daemon-3.0/libkeyboard.so
. Zumindest werden dadurch einige Zurücksetzungen von xkbmap (dh nach dem Sperren des Bildschirms) behoben.
1 Ich verwende 14.04, aber das Problem, den Fokus zu verlieren, ist immer noch nicht behoben. ( Unbestätigter Bericht in vorgelagertem Gnome )
org.gnome.desktop.input-sources
.
dconf-editor
?
setxkbmap
Befehle zu Ihrem hinzuzufügen~/.profile
? Auf diese Weise werden sie jedes Mal ausgeführt, wenn Sie sich anmelden. Da in Gnome dieselben Einstellungen vorgenommen wurden, sollte sich beim Zurücksetzen nichts ändern.