В Gnome я часто ввожу пароль sudo, когда выбирается русский язык. Так раздражает ждать, пока проверка пароля не пройдет, переключаться на английский и вводить пароль заново!
Есть ли способ принудительно включить английский язык в диалоговом окне ввода пароля? Особенно на экране входа в систему.
решение1
Использование gsettings
Он хорошо работает с Gnome/Unity Indicator/Layout switch в Ubuntu 13.10 или более поздней версии.
Запустите gsettings list-recursively org.gnome.desktop.input-sources
проверку активных макетов и систем ввода.
Проблемы:
В случае блокировки диалога невозможно восстановить последнюю использованную клавиатуру. Поэтому после разблокировки всегдаen
Для судо(Псевдоним)
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
команды.
Полные шаги указаны выше. Я сохранил только разные шаги. Я использую us,ara (английский, арабский), бегите setxkbmap -query
проверять ваши.
Проблемы:
setxkbmap меняет раскладку на уровне X, что переопределяет эффективную раскладку Unity/Gnome. Индикатор продолжает показывать последнюю раскладку. Также он нарушает некоторые сочетания клавиш для переключения раскладки. Чтобы избежать этого, добавьте свои опции сочетаний клавиш в setxkbmap
команду. Пример: setxkbmap us,ara -option grp:rshift_toggle -option grp:rctrl_switch
.
В случае блокировки диалогового окна невозможно восстановить последнюю использованную клавиатуру.
Для судо
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