#!/usr/bin/env python3 from libqtile.config import Key from libqtile.command import lazy from libqtile.config import Click, Drag class MyKeys(): def __init__(self, mod, browser, term, editor): self.mod = mod self.browser = browser self.term = term self.editor = editor def init_keys(self): my_keys = [ Key([self.mod], "Return", lazy.spawn(self.term), ), Key([self.mod, "shift"], "a", lazy.spawn('anki'), ), Key([self.mod, "shift"], "m", lazy.spawn("spotify"), ), Key([self.mod], "Tab", lazy.spawn("rofi -show drun"), ), Key([self.mod], "r", lazy.spawn("rofi -show run"), ), Key([self.mod], "w", lazy.spawn("rofi -show window"), ), Key([self.mod], "p", lazy.spawn("passmenu -p 'Password for: '"), ), Key([self.mod], "b", lazy.spawn(self.browser), ), Key([self.mod, "shift"], "c", lazy.next_layout(), ), Key([self.mod], "q", lazy.window.kill(), ), Key([self.mod, "shift"], "r", lazy.restart(), ), Key([self.mod, "shift"], "0", lazy.shutdown(), ), Key([self.mod, "shift"], "e", lazy.spawn(self.editor), ), # Switch focus of monitors Key([self.mod], "period", lazy.next_screen(), ), # Treetab controls Key([self.mod, "shift"], "h", lazy.layout.move_left(), ), Key([self.mod, "shift"], "l", lazy.layout.move_right(), ), # Window controls Key([self.mod], "n", lazy.layout.down(), ), Key([self.mod], "b", lazy.layout.up(), ), Key([self.mod, "shift"], "n", lazy.layout.shuffle_down(), lazy.layout.section_down(), ), Key([self.mod, "shift"], "b", lazy.layout.shuffle_up(), lazy.layout.section_up(), ), Key([self.mod], "s", lazy.layout.shrink(), lazy.layout.decrease_nmaster(), ), Key([self.mod], "l", lazy.layout.grow(), lazy.layout.increase_nmaster(), ), Key([self.mod], "o", lazy.layout.normalize(), ), Key([self.mod], "m", lazy.layout.maximize(), ), Key([self.mod, "shift"], "f", lazy.window.toggle_floating(), ), Key([self.mod], "f", lazy.window.toggle_fullscreen(), ), # Stack controls Key([self.mod, "shift"], "Tab", lazy.layout.rotate(), lazy.layout.flip(), ), Key([self.mod, "shift"], "space", lazy.layout.toggle_split(), ), # Volume controls Key([], "XF86AudioLowerVolume", lazy.spawn('amixer sset Master 5%-'), ), Key([], "XF86AudioRaiseVolume", lazy.spawn('amixer sset Master 5%+'), ), # Spotify Key([self.mod, "shift"], "p", lazy.spawn("mocp -G "), ), Key([self.mod, "shift"], "n", lazy.spawn("mocp -f"), ), Key([self.mod, "shift"], "b", lazy.spawn("mocp -r"), ), # Change languages Key([self.mod], "F1", lazy.spawn("setxkbmap us -option ctrl:swapcaps"), ), Key([self.mod],"F2", lazy.spawn("setxkbmap gr"), ), ] return my_keys def init_mouse(self): mouse_keys = [ Drag([self.mod], "Button1", lazy.window.set_position_floating(), start=lazy.window.get_position()), Drag([self.mod], "Button3", lazy.window.set_size_floating(), start=lazy.window.get_size()), Click([self.mod], "Button2", lazy.window.bring_to_front()), ] return mouse_keys