비밀번호 입력 대화 상자에서 언어를 항상 영어로 지정하는 방법은 무엇입니까?

비밀번호 입력 대화 상자에서 언어를 항상 영어로 지정하는 방법은 무엇입니까?

Gnome에서는 러시아어를 선택할 때 종종 sudo 비밀번호를 입력합니다. 비밀번호 확인이 실패할 때까지 기다리고, 영어로 전환해서 비밀번호를 다시 입력하는 것이 너무 귀찮습니다!

비밀번호 입력창에 영어를 강제로 입력하는 방법이 있나요? 특히 로그온 화면에서요.

답변1

gsetting 사용

Ubuntu 13.10 이상의 Gnome/Unity Indicator/Layout 스위치와 잘 작동합니다.

실행하여 gsettings list-recursively org.gnome.desktop.input-sources활성 레이아웃과 입력 시스템을 확인하세요.

문제:

잠금 대화 상자의 경우 마지막으로 사용한 키보드를 복원할 수 없습니다. 그래서 잠금 해제 후에는 항상en

  • sudo의 경우(별명)

    nano ~/.bashrc
    

    이 줄을 추가하세요

    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"
    
  • 잠금 대화상자의 경우(대리)

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

    이것을 넣으세요:

    #!/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
    

    링크 수정:

    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
    

setxkbmap을 사용한 이전 답변

setxkbmap레이아웃이 명령 으로 설정된 경우에만 사용하십시오 .

전체 단계는 위에 언급되어 있습니다. 나는 다른 단계만을 유지했습니다. 저는 저희 아라(영어, 아랍어)를 이용하고 있으니 달려가서 setxkbmap -query확인해 보세요.

문제:

setxkbmap은 X 레벨에서 레이아웃을 변경합니다. 이는 효과적인 Unity/Gnome 레이아웃을 재정의합니다. 표시기는 마지막 레이아웃을 계속 표시합니다. 또한 일부 레이아웃 전환 키보드 단축키가 중단됩니다. 이를 방지하려면 setxkbmap명령에 바로가기 옵션을 추가하세요. 예: setxkbmap us,ara -option grp:rshift_toggle -option grp:rctrl_switch.

잠금 대화 상자의 경우 마지막으로 사용한 키보드를 복원할 수 없습니다.

  • sudo의 경우

    nano ~/.bashrc
    

    이 줄을 추가하세요

    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"
    
  • 잠금 대화상자의 경우

    nano gnome-screensaver-dialog_proxy
    

    이것을 넣으세요:

    #!/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
    

관련 정보