Como especificar na caixa de diálogo de entrada de senha que o idioma seja sempre o inglês?

Como especificar na caixa de diálogo de entrada de senha que o idioma seja sempre o inglês?

No Gnome, costumo inserir a senha sudo quando o idioma russo está sendo selecionado. É tão chato esperar que a verificação da senha falhe, mudar para o inglês e redigitar a senha!

Existe uma maneira de forçar o inglês na caixa de diálogo de entrada de senha? Especialmente na tela de login.

Responder1

Usando gsettings

Funciona bem com o switch Gnome/Unity Indicator/Layout no Ubuntu 13.10 ou posterior.

Execute gsettings list-recursively org.gnome.desktop.input-sourcespara verificar seus layouts e sistemas de entrada ativos.

Problemas:

No caso de diálogo de bloqueio, não é possível restaurar o último teclado usado. Então depois de desbloquear sempreen

  • Para sudo(Alias)

    nano ~/.bashrc
    

    Anexe esta linha

    alias sudo="sudo_success='' ; last_kbd=`gsettings get org.gnome.desktop.input-sources current | awk '{print $2}'` ; gsettings set org.gnome.desktop.input-sources current 0 ; sudo echo -n  && sudo_success='1' ; gsettings set org.gnome.desktop.input-sources current $last_kbd ; test $sudo_success && sudo"
    
  • Para caixa de diálogo de bloqueio(Procurador)

    cd /usr/lib/gnome-screensaver/
    sudo mv gnome-screensaver-dialog gnome-screensaver-dialog_orig
    sudo nano gnome-screensaver-dialog_proxy
    

    Coloque isso em:

    #!/usr/bin/env bash
    last_kbd=`gsettings get org.gnome.desktop.input-sources current | awk '{print $2}'`
    gsettings set org.gnome.desktop.input-sources current 0
    /usr/lib/gnome-screensaver/gnome-screensaver-dialog_orig $@
    gsettings set org.gnome.desktop.input-sources current $last_kbd
    

    Corrija um link:

    sudo chown root:root gnome-screensaver-dialog_proxy
    sudo chmod +x root:root gnome-screensaver-dialog_proxy
    sudo ln -s gnome-screensaver-dialog_proxy gnome-screensaver-dialog
    

Resposta antiga usando setxkbmap

Use-o somente se seus layouts estiverem definidos com setxkbmapcomando.

As etapas completas são mencionadas acima. Eu mantive apenas passos diferentes. Estou usando nós,ara (inglês, árabe), corra setxkbmap -querypara conferir o seu.

Problemas:

setxkbmap altera o layout no nível X, que substitui o layout efetivo do Unity/Gnome. O indicador continua mostrando o último layout. Também quebra alguns atalhos de teclado de troca de layout. Para evitar isso, adicione suas opções de atalhos ao setxkbmapcomando. Exemplo: setxkbmap us,ara -option grp:rshift_toggle -option grp:rctrl_switch.

No caso de diálogo de bloqueio, não é possível restaurar o último teclado usado.

  • Para sudo

    nano ~/.bashrc
    

    Anexe esta linha

    alias sudo="sudo_success='' ; last_kbd=$(setxkbmap -query | awk 'FNR == 3 {print $2}') ; setxkbmap us,ara ; sudo echo -n && sudo_success='1' ; setxkbmap $last_kbd ; test $sudo_success && sudo"
    
  • Para caixa de diálogo de bloqueio

    nano gnome-screensaver-dialog_proxy
    

    Coloque isso em:

    #!/usr/bin/env bash
    last_kbd=$(setxkbmap -query | awk 'FNR == 3 {print $2}')
    setxkbmap us,ara
    /usr/lib/gnome-screensaver/gnome-screensaver-dialog_orig $@
    setxkbmap $last_kbd
    

informação relacionada