# ---------------------------------------- # Importing # ---------------------------------------- # Used to control windows and window # placement from libqtile.command import lazy from libqtile.config import EzKey, EzDrag, EzClick @lazy.window.function def float_to_front(window): if window.floating: window.cmd_bring_to_front() # ---------------------------------------- # Default apps # ---------------------------------------- # I mostly use Rofi to launch apps so not # too important to me TERMINAL = "alacritty" SCREENSHOT = "flameshot gui" LAUNCHER = "rofi -show" BROWSER = "firefox" # ---------------------------------------- # Modifier keys # ---------------------------------------- # Used to move and control window # placement within Qtile EzKey.modifier_keys = { "M": "mod4", # Windows "A": "mod1", # Alt "S": "shift", # Shift "C": "control", # Ctrl } # ---------------------------------------- # Mouse # ---------------------------------------- # Controling floating windows with a # mouse mouse = [ EzDrag( "M-", lazy.window.set_position_floating(), start=lazy.window.get_position(), ), EzDrag( "M-", lazy.window.set_size_floating(), start=lazy.window.get_size() ), EzClick("M-", lazy.window.bring_to_front()), ] # ---------------------------------------- # Window # ---------------------------------------- # Different lists of window controls for # Qtile window_navigation = [ EzKey("M-", lazy.group.next_window(), float_to_front()), EzKey("M-", lazy.layout.left()), EzKey("M-", lazy.layout.down()), EzKey("M-", lazy.layout.up()), EzKey("M-", lazy.layout.right()), ] window_displacement = [ EzKey("M-C-", lazy.layout.swap_left(), lazy.layout.shuffle_left()), EzKey("M-C-", lazy.layout.swap_down(), lazy.layout.shuffle_down()), EzKey("M-C-", lazy.layout.swap_up(), lazy.layout.shuffle_up()), EzKey("M-C-", lazy.layout.swap_right(), lazy.layout.shuffle_right()), ] window_dimension = [ #EzKey("M-S-", lazy.layout.grow_left()), #EzKey("M-S-", lazy.layout.grow_down()), #EzKey("M-S-", lazy.layout.grow_up()), #EzKey("M-S-", lazy.layout.grow_right()), EzKey("M-S-", lazy.layout.grow()), EzKey("M-S-", lazy.layout.shrink()), EzKey("M-S-", lazy.layout.reset()), ] window_toggles = [ EzKey("M-y", lazy.next_layout()), EzKey("M-q", lazy.window.kill()), EzKey("M-g", lazy.window.toggle_floating()), EzKey("M-m", lazy.window.toggle_fullscreen()), ] # ---------------------------------------- # Qtile and App # ---------------------------------------- # Launching apps and qtile settings qtilectl = [ EzKey("M-S-r", lazy.restart()), EzKey("M-S-q", lazy.shutdown()), ] rofi = [ EzKey("M-r", lazy.spawn(LAUNCHER)), ] application_spawns = [ EzKey("M-t", lazy.spawn(TERMINAL)), EzKey("M-b", lazy.spawn(BROWSER)), ] mediactl = [ EzKey("", lazy.spawn("playerctl play-pause")), EzKey("", lazy.spawn("playerctl next")), EzKey("", lazy.spawn("playerctl previous")), ] scrcap = [ EzKey("", lazy.spawn(SCREENSHOT)), ] # ---------------------------------------- # Keybinds # ---------------------------------------- # Putting all keybinds into one list to # use in other scripts keys = [ *window_navigation, *window_displacement, *window_dimension, *window_toggles, *qtilectl, *rofi, *application_spawns, *mediactl, *scrcap, ]