Как отслеживать смену раскладки клавиатуры из командной строки?

Поставил linuxmint cinnamon 19.3
Настроил две раскладки us и ru всё работает, раскладка переключается, в панели индикатор показывает что раскладка переключилась. Всё ок.

Задача - получить текущую раскладку клавиатуры из bash-скрипта.
Пробовал метод, который применял в другом дистрибутиве:
dconf watch /org/gnome/desktop/input-sources/current

но так как cinnamon это не gnome этот способ не работает.
Поменял "gnome" на "cinnamon" но без результатов.
dconf watch /org/cinnamon/desktop/input-sources/current
  • Вопрос задан
  • 392 просмотра
Решения вопроса 1
sotvm
@sotvm
Умный поймёт, а дураку и так всё равно.
через костыли:
в настройках клавы при использовании другой раскладки "зажигаю светодиод"
Use keyboard LED to show alternative layout Scroll Lock
т.е.
если светодиод горит - значит RU (вернет 1),если нет EN (вернёт 0)
значения получаю так

xset -q | sed -rn 's/.*LED mask.*(.)[[:xdigit:]]{3}/\1/p'

короче говоря, данные можно вытащить из выхлопа команды xset -q
смотри LED mask: 8цифр
или "через светодиод горит/нет" Scroll Lock: on/off
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы