Мне нужна только две раскладки клавиатуры в моей системе: us altgr-intl
(США, международные (мертвые клавиши AltGr)) и gr
(Греция), поэтому я выбрал «Система» → «Настройки» → «Клавиатура» → «Макеты». Однако каждый раз, когда я начинаю новый сеанс Gnome (перезагрузка, выход из системы / вход в систему), раскладка клавиатуры us
автоматически вставляется вверху списка.
Я создал небольшой скрипт под названием fixlang
, который обеспечивает желаемый результат:
layouts='[us altgr-intl,gr]' # tab between us and altgr
key=/desktop/gnome/peripherals/keyboard/kbd/layouts
active_layouts="$(gconftool -g $key)"
if [ "$active_layouts" != "$layouts" -o "$1" == -f ]
then
gconftool -t l --list-type=str -s $key "$layouts"
fi
, который я запускаю при входе в систему.
Тем не менее, это клудж. Как я могу гарантировать, что Gnome не испортит мой выбор раскладки клавиатуры?
Возможно, вы столкнулись с ошибкой # 688936 . Это еще не исправлено, но вы можете попробовать обходной путь в комментарии № 5 :
Я наконец нашел решение для этого:
- Выйти.
- Нажмите на свой аккаунт, но пока не вводите пароль.
- Небольшая панель с несколькими раскрывающимися списками появляется в самом низу экрана входа в систему. Вы, вероятно, никогда не замечали этого раньше - я точно не заметил;)
- Выберите правильную раскладку клавиатуры во втором раскрывающемся списке слева.
- Войти.
Исправлено:)
blockquote>
Вы уверены, что не запускаете какой-либо скрипт, который уже изменяет список макетов при загрузке / входе в систему? С 8.04 я использовал только макеты «USA Dvorak International» и «Norway», и я никогда не видел этого. Или, если вы вручную изменили файлы настроек GNOME (что, вероятно, учитывая fixlang
), это, вероятно, будет обнаружено и переопределено при завершении работы / запуске GNOME.