dotfiles/config/qtile/kblayout.py

23 lines
691 B
Python

from libqtile.widget import base
import os
class KBLayout(base.InLoopPollText):
"""Widget for displaying the current keyboard layout
It requires setxkbmap and xkblayout"""
orientations = base.ORIENTATION_HORIZONTAL
defaults = [
("background", "#000000", "Backbround color"),
("foreground", "#ffffff", "Foreground color"),
]
def __init__(self, **config):
base.InLoopPollText.__init__(self, **config)
def get_keyboard(self):
kb = os.popen("xkblayout").read().rstrip("\n")
return kb
def poll(self):
kb = os.popen(".config/qtile/kblay.sh").read().rstrip('\n').encode('utf-8').decode('utf-8')
return kb