dotfiles/config/qtile/kblayout.py
2021-02-11 16:45:55 +02:00

28 lines
611 B
Python

"""
For working widget install `xkblayout`
$ yay -S xkblayout
"""
from libqtile.widget import base
from os import popen
KBCMD = """
case "$(xkblayout)" in
"Eng") echo "us" ;;
"Rus") echo "ru" ;;
"Ukr") echo "ua" ;;
esac
"""
class KBLayout(base.InLoopPollText):
"""Widget for displaying the current keyboard layout"""
orientations = base.ORIENTATION_HORIZONTAL
def __init__(self, **config):
base.InLoopPollText.__init__(self, **config)
def poll(self):
kb = popen(KBCMD).read().rstrip('\n') \
.encode('utf-8').decode('utf-8')
return kb