i3status вывести расскладку
odto11 26 июля, 2017 - 19:20
Всем привет.
подскажите, есть ли возможность выводить расскладку в i3status (rus/eng)? Если есть, то подскажите как?
Интересуте вывод стандартными средствами.
запоминание раскладки осуществляется через kbdd.
через conky раскладку выводил с помощью "exec skb"
Заранее спасибо, откликнувшимся.
З.Ы. на сайте i3wm не нашел как это вывести.
»
- Для комментирования войдите или зарегистрируйтесь
В связи с упомянутым вами же
В связи с упомянутым вами же kbdd не понимаю в чем проблема. dbus апи прописано в мане kbdd
Получить текущую раскладку можно так
wi ~ # dbus-send --print-reply=literal --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.getCurrentLayout
uint32 0
Тоесть раскладка у нас "0"
Перевести все это в символьный вид можно так :
wi ~ # dbus-send --print-reply=literal --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.getLayoutName uint32:0
English (US)
wi ~ # dbus-send --print-reply=literal --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.getLayoutName uint32:1
Russian
Сей вывод на мой вкус неплохо было бы оттримить и взять первые три (два?) символа строки. Как то так
wi ~ # expr substr `dbus-send --print-reply=literal --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.getLayoutName uint32:1 | xargs` 1 3
Rus
Ну и наконец завернуть все это в скрипт и засунуть в i3
ЗЫ
Тут что-то похожее лепят https://unix.stackexchange.com/questions/356410/how-to-show-only-short-keyboard-layout-in-i3blocks-with-kbdd-layout
Кбдд дожен быть запущен до использования скрипта
кбдд держит собственную раскладку для каждого окна. Соответсвенно привязывать запуск скрипта следует к событию выбора окна. Как это делать в i3 не интересовался. Вероятны проблемы со screen.
Мне для раскладки вполне достаточно индикатора на клавиатуре :)