for i, (name, kwargs) in enumerate(group_names, 1): keys.append(Key([mod], str(i), lazy.group[name].toscreen())) keys.append(Key([mod, "shift"], str(i), lazy.window.togroup(name))) layout_theme = { "border_width": 1, "margin": 2, # "border_focus": colors["color1"], # "border_normal": colors["color2"], "border_focus": colors["border_focus"], "border_normal": colors["border_normal"], } layouts = [ layout.MonadTall(**layout_theme), layout.Floating(**layout_theme), layout.Max(**layout_theme), layout.Bsp(**layout_theme), layout.Zoomy(**layout_theme), ] widget_defaults = dict( font="Fira Sans Medium", fontsize=10, padding=3, ) extension_defaults = widget_defaults.copy() power_widgets: list = [ widget.Sep(
Key([], "XF86AudioLowerVolume", lazy.spawn("amixer -c 1 -q set Master 2dB-")), Key([], "XF86AudioMute", lazy.spawn("amixer -D pulse set Master 1+ toggle")), ] groups = [Group(i) for i in "asdfuiop"] for i in groups: # mod1 + letter of group = switch to group keys.append(Key([mod], i.name, lazy.group[i.name].toscreen())) # mod1 + shift + letter of group = switch to & move focused window to group keys.append(Key([mod, "shift"], i.name, lazy.window.togroup(i.name))) layouts = [layout.Max(), layout.MonadTall(border_focus="#0000ff")] widget_defaults = dict( font='Arial', fontsize=16, padding=3, ) screens = [] def setup_screens(qtile): global screens screens.append( Screen(bottom=bar.Bar( [
if __name__ in ["config", "__main__"]: group_names = init_group_names() groups = init_groups() for i, (name, kwargs) in enumerate(group_names, 1): keys.append(Key([mod], str(i), lazy.group[name].toscreen())) keys.append(Key([mod, "control"], str(i), lazy.window.togroup(name))) keys.append( Key([mod, "shift"], str(i), lazy.window.togroup(name, switch_group=True))) layouts = [ layout.MonadTall(margin=20, border_focus='#3F51B5', border_normal='#000000'), layout.Max(), # Try more layouts by unleashing below layouts. # layout.Columns(border_focus_stack=["#d75f5f", "#8f3d3d"], border_width=4), # layout.Stack(num_stacks=2), # layout.Bsp(), # layout.Matrix(), # layout.MonadWide(), # layout.RatioTile(), # layout.Tile(), # layout.TreeTab(), # layout.VerticalTile(), # layout.Zoomy(), ]
) ### Layouts layout_config = dict( border_width=2, border_focus=colors['accent'], ) layouts = [ layout.Max(**layout_config), # layout.Stack(num_stacks=2), # Try more layouts by unleashing below layouts. # layout.Bsp(), # layout.Columns(margin=4, insert_position=1), # layout.Matrix(), layout.MonadTall(margin=8, **layout_config), # layout.MonadWide(), # layout.RatioTile(), # layout.Tile(), # layout.TreeTab(), # layout.VerticalTile(), # layout.Zoomy(), layout.Floating(**layout_config), ] widget_defaults = dict( font='sans', fontsize=12, padding=8, ) extension_defaults = widget_defaults.copy()
), float=True, group="gaming", ), Rule(Match(wm_class=["LoLPatcherUx.exe", "LoLClient.exe"]), float=True), Rule(Match(wm_class=["sun-awt-X11-XWindowPeer", "jetbrains-pycharm"]), float=True), Rule(Match(wm_class=["Spotify"]), group="media", intrusive=True), ] # auto bind keys to dgroups mod+1 to 9 dgroups_key_binder = simple_key_binder(mod) layouts = [ layout.Max(**layout_defaults), # Fullscreen all the things layout.Matrix(**layout_defaults), # Tile evenly in squares layout.MonadTall(**layout_defaults), # 1 tall pane, 2 small ones floating_layout, ] # Hooks @hook.subscribe.client_new def dialogs(window): if window.window.get_wm_type() == "dialog" or window.window.get_wm_transient_for(): window.floating = True @hook.subscribe.client_new def app_by_conf(window): wm_class = window.window.get_wm_class() conf = get_conf(wm_class)
("chat", {'layout': 'tile'}), ("music", {}), ("docs", {'layout': 'max'}), ("vbox", {}), ("gimp", {}), ] groups = [Group(name, **kwargs) for name, kwargs in group_names] for i, (name, kwargs) in enumerate(group_names, 1): keys.append(Key([mod], str(i), lazy.group[name].toscreen())) keys.append(Key([mod, "shift"], str(i), lazy.window.togroup(name))) layouts = [ layout.Stack(stacks=2, border_normal="#222222"), layout.MonadTall(border_normal="#222222"), layout.Tile(), layout.Max() ] font = 'DejaVu Sans Mono' foreground = '#BBBBBB' alert = "#FFFF00" def humanize_bytes(value): suff = ["B", "K", "M", "G", "T"] while value > 1024. and len(suff) > 1: value /= 1024. suff.pop(0) return "% 3s%s" % ('%.3s' % value, suff[0])
"margin": 3, "border_focus": "e1acff", "border_normal": "1D2330" } # layout.MonadTall( # border_with=2, # # margin=10, # border_focus="#543470" # ), layout_conf = {'border_focus': "#a151d3", 'border_width': 1, 'margin': 4} layouts = [ # layout.Max(), layout.MonadTall(border_focus="#a151d3", border_width=2), # layout.MonadWide(**layout_conf), # layout.Bsp(**layout_conf), # layout.Matrix(columns=2, **layout_conf), # layout.RatioTile(**layout_conf), # layout.Columns(), # layout.Tile(), # layout.TreeTab(), # layout.VerticalTile(), # layout.Zoomy(), ] colors = [["#282c34", "#282c34"], ["#1c1f24", "#1c1f24"], ["#dfdfdf", "#dfdfdf"], ["#ff6c6b", "#ff6c6b"], ["#98be65", "#98be65"], ["#da8548", "#da8548"],
# mod1 + shift + letter of group = switch to & move focused window to group Key([mod, "shift"], i.name, lazy.window.togroup(i.name, switch_group=True)), # Or, use below if you prefer not to switch to that group. # # mod1 + shift + letter of group = move focused window to group # Key([mod, "shift"], i.name, lazy.window.togroup(i.name)), ]) layouts = [ layout.Max(), # layout.Stack(num_stacks=2), # Try more layouts by unleashing below layouts. # layout.Bsp(), # layout.Columns(), # layout.Matrix(), layout.MonadTall(), # layout.MonadWide(), # layout.RatioTile(), layout.Tile(), # layout.TreeTab(), # layout.VerticalTile(), # layout.Zoomy(), ] widget_defaults = dict( font='sans', fontsize=12, padding=3, ) extension_defaults = widget_defaults.copy()