Секция 1. Характеристика
- Наименование: xfce4-xkb-plugin (Раскладки клавиатуры)
- Назначение: кнопка переключения раскладки клавиатуры
- Описание: входит в состав пакета Xfce-plugins
- Сфера применения: служит для переключения раскладки клавиатуры (щелчком левой кнопки мыши) и индикации её текущей раскладки.
- Потенциальные пользователи: использующие более одной раскладки клавиатуры
- Доступность: плагин доступен в любых дистрибутивах, содержащих Xfce.
Секция 2. Описание
Индикатор текущей раскладки клавиатуры, отображающий её в виде изображения (например, американский и российский флаги, см. рисунок) или символов (скажем, US и RU, соответственно).

В отличие от штатного индикатора раскладок KDE, xfce4-xkb-plugin использует только данные, прописанные в секции Keyboard section файла /etc/X11/xorg.conf, такие как XkbLayout, XkbVariant и XkbOptions.
Кроме собственно преключения и индикации раскладки, способен запоминать её для каждого приложения отдельно, как это повелось в современных версиях Windows. Это можно отключить, щелкнув на флаге правой кнопкой мыши, выбрав пункт Параметры и сняв отметку с соответствующего чекбока. Здесь же устанавливается и раскладка клавиатуры по умолчанию, включаемая при запуске Xfce.
Плагин xfce4-xkb-plugin имеет неприятный, но устранимый глюк: после очередного (второго или произвольного последующего) запуска Xfce отказывается индицировать русскую раскладку и в текстовом, и в графическом виде, выводя вместо этого NULL (при этом сама раскладка переключается, и ввод с клавиатуры происходит нормально).
Для лечения необходимо обеспечить запуск установки раскладки клавиатуры и её варианта. Почему именно в Xfce требуется повторно определять эти параметры, уже заданные в конфиге Иксов — тайна сия велика есть, но работает только так. Насколько мне известно, метод устранения этого глюкобага выявлен пользователями Archlinux'а.
Переопределение раскладки дожно быть выполнено до запуска gdm (при runleves 4) или Xfce (при runlevel 3, когда Иксы запускаются через startx из командной строки).
В каждом случае сделать это можно двумя способами.
При runlevel 4 первый способ — создать в домашнем каталоге пользователя файл ~/.xsessionrc и вписать в него сроку
setxkbmap "us,ru(winkeys)"
Это будет работать, разумеется, только в сеансах данного пользователя. Чтобы распространить действие команды setxkbmap глобально, надо от имени root'а открыть в текстовом редакторе файл /etc/X11/xinit/xinitrc.xfce, отыскать в нём строку
# Run xfce4-session if installed
и перед ней вписать ту же строку
setxkbmap "us,ru(winkeys)"
При runlevel 3 для отдельного пользователя следует создать в его домашнем каталоге файл ~/.xinitrc и отредактировать его аналогично файлу ~/.xsessionrc. Для "глобализации" установки раскладки поступаем как и втором способе для runlevel 4.
Оба способа для обычного пользователя будут работать в любом дистрибутиве и в любой операционке, использующих (или могущих использовать) Xfce в качестве среды по умолчанию, что было проверено на Xubuntu и FreeBSD; только в последней системе при автоматическом входе в систему через менеджер сеансов типа gdm указанная строка должна быть внесена в файл ~/.Xclients.
Способ для суперпользователя также должен работать везде, но потребует корректировки в отношении файла, отвечающего за запуск рабочей среды в конкретном дистрибутиве.