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()"