J'utilise gnome 3.22.1 mais un problème existe depuis 3.18.
Avant cela (je ne me souviens pas de la version exacte), j'ai pu changer la disposition du clavier en utilisant xkb-witch , une application simple qui utilise des liaisons X.org sous le capot.
Après 3.18 si vous exécutez xkb-switch, la disposition du clavier ne sera pas modifiée dans gnome. Une enquête plus approfondie a montré que le changement de disposition fonctionne, mais pendant très peu de temps.
Si vous exécutez ce script:
for i in $(seq 1000); do
lang=$(xkb-switch -s ru; xkb-switch);
if [[ "$lang" == "ru" ]]; then
echo $lang;
fi;
done
Vous obtiendrez de 3 à 20 commutations de mise en page «réussies», selon votre chance.
Après avoir recherché ce problème sur Google, je donne les conseils suivants :
gsettings set org.gnome.desktop.input-sources current 0
Le paramètre est en cours de modification, mais la disposition reste la même.
J'ai trouvé une méthode "hacky" pour changer la mise en page:
setxkbmap us,ru
setxkbmap ru,us
mais le shell gnome n'est pas au courant de ce changement et affiche une langue incorrecte dans l'indicateur de disposition.
J'ai signalé ce problème (désolé, réputation insuffisante, https: //bbs.archlinux.org/viewtopic.php? Pid = 1657582 https: //github.com/ierton/xkb-switch/issues/15), mais n'a pas eu de chance d'obtenir de bonnes réponses.
Et à ce stade, je suis coincé. Je ne suis pas assez habile pour identifier le problème dans le code shell gnome. Je ne suis même pas sûr que ce soit le problème (du gnome shell).
Ce que je veux, c'est un moyen compatible avec les gnomes pour changer la disposition du clavier à partir du terminal. Quelqu'un peut me diriger dans la bonne direction? Dois-je déposer cela comme un bug (en particulier le fait que la disposition du clavier ne peut pas être modifiée via gsettings)?
gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval "imports.ui.status.keyboard.getInputSourceManager()._mruSources[1].activate()"
Si vous utilisez IBus comme méthode d'entrée (qui est probablement une valeur par défaut), vous pouvez modifier votre entrée à l'aide de la
ibus
commande:Vous pouvez voir toutes les dispositions disponibles avec la
ibus list-engine
commande.Il convient de noter que cette approche ne modifie pas l'indicateur de langue, bien qu'elle fonctionne de manière fiable dans le cas contraire.
la source
setxkbmap us
- sans aucun moyen de modifier la mise en page à l'aide de raccourcis standard après cela.setxkbmap
. De plus,setxkbmap
peut agir comme un buggy dans les environnements WM modernes, voir la question pour plus de détails à ce sujet.Utilisation
gsettings
.La définition
org.gnome.desktop.input-sources.sources
de la liste nulle , "[]", vous permet d'utiliser la configuration du clavier du serveur X sans que gnome-shell essaie de la configurer, vous pourrez donc faire comme avant.la source
setxkbmap
commandes que j'ai tapées par la suite, jusqu'à ce que je remette les sources d'entrée via la boîte de dialogue Paramètres.Je pense que tu devrais essayer
sudo dpkg-reconfigure keyboard-configuration
la source
Vous pouvez configurer et basculer vers une méthode d'entrée sur la ligne de commande même si vous n'avez pas précédemment configuré cette méthode d'entrée avec la souris:
gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'ru')]"
Pour Dvorak, utilisez
us+dvorak
(ougb+dvorak
si vous êtes au Royaume-Uni, ou autre).la source