qtile/bar.py
2024-12-21 18:26:21 +01:00

105 lines
2.2 KiB
Python

from libqtile import bar, layout, widget, hook
from libqtile.config import Click, Drag, Group, Key, Match, Screen
from libqtile.lazy import lazy
from libqtile.utils import guess_terminal, send_notification
# Defaults
widget_defaults = dict(
font="sans",
fontsize=12,
padding=3,
)
extension_defaults = widget_defaults.copy()
colors = [
["#000000", "#000000"], # true black [0]
["#ffffff", "#ffffff"],
]
# Eye candy widgets
# Funciton widgets
icon = widget.TextBox(
text='',
font="JetBrainsMono Nerd Font",
mouse_callbacks={"Button1":lazy.spawn("rofi -show drun -show-icons")},
fontsize=20,
margin=4,
padding=3,
)
group_box = widget.GroupBox(
highlight_metod='block',
visible_groups=['1', '2', '3', '4', '5']
)
window_name = widget.WindowName()
kb_layout = widget.KeyboardLayout(
configured_keyboards=['us', 'cz qwerty'],
display_map={'us':'US', 'cz qwerty':'CZ'},
)
battery = widget.Battery(
format="{char}{percent:2.0%} {hour:d}:{min:02d}"
)
clock = widget.Clock(format="%y-%m-%d %a %H:%M")
# Screen definition
screens = [
Screen(
wallpaper='~/.config/qtile/wallpapers/theater_by_flaviobollo.jpg',
wallpaper_mode='fill',
left=bar.Gap(5),
right=bar.Gap(5),
bottom=bar.Gap(5),
top=bar.Bar([
icon,
group_box,
window_name,
kb_layout,
battery,
clock,
], 30,
margin=6,
border_width=1,
border_color= colors[1][0], # Borders are white
),
),
Screen(
wallpaper='~/.config/qtile/wallpapers/theater_by_flaviobollo.jpg',
wallpaper_mode='fill',
left=bar.Gap(5),
right=bar.Gap(5),
bottom=bar.Gap(5),
top=bar.Bar([
icon,
group_box,
window_name,
kb_layout,
battery,
clock,
], 30,
margin=6,
border_width=1,
border_color="ffffff", # Borders are white
),
)
]