package main import ( "github.com/BurntSushi/xgb" "github.com/BurntSushi/xgb/xproto" "github.com/crecheer/wm/keysym" ) // appearance var barHeight uint16 = 20 var gapSize int = 10 var barColor uint32 = 0x000000 var barFg uint32 = 0x888888 var selBg uint32 = 0x285577 var selFg uint32 = 0xEEEEEE var fontName = "JetBrainsMono Nerd Font:size=16" var tagCount = 9 var borderWidth int = 2 var borderColor uint32 = 0x444444 var borderFocus uint32 = 0x285577 // shows focused window title var windowTitle = 0 // xproto.ModMask1 = Alt // xproto.ModMask4 = Super / Win var mod = uint16(xproto.ModMask4) // commands that get executed on startup var startup = []string{"notify-send hello world!"} var keys = []Key{ { Mod: mod, Sym: keysym.XK_Return, Fn: func(conn *xgb.Conn) { spawn("st") }, }, { Mod: mod, Sym: keysym.XK_w, Fn: func(conn *xgb.Conn) { spawn("qutebrowser") }, }, { Mod: mod | xproto.ModMaskShift, Sym: keysym.XK_q, Fn: func(conn *xgb.Conn) { quit() }, }, { Mod: mod | xproto.ModMaskShift, Sym: keysym.XK_r, Fn: func(conn *xgb.Conn) { restart() }, }, { Mod: mod, Sym: keysym.XK_q, Fn: func(conn *xgb.Conn) { killActiveWindow(conn, focused) }, }, { Mod: mod, Sym: keysym.XK_d, Fn: func(conn *xgb.Conn) { spawn("dmenu_run") }, }, { Mod: mod, Sym: keysym.XK_l, Fn: func(conn *xgb.Conn) { layout = "tileHorizontal" updateWindows(conn) }, }, { Mod: mod | xproto.ModMaskShift, Sym: keysym.XK_l, Fn: func(conn *xgb.Conn) { layout = "tileVertical" updateWindows(conn) }, }, { Mod: mod, Sym: keysym.XK_m, Fn: func(conn *xgb.Conn) { layout = "tileWithMaster" updateWindows(conn) }, }, { Mod: mod, Sym: keysym.XK_0, Fn: func(conn *xgb.Conn) { var tags BitMask = 1<