diff --git a/config.h b/config.h index 3921532..269ddd8 100644 --- a/config.h +++ b/config.h @@ -71,9 +71,6 @@ static const Layout layouts[] = { */ static const MonitorRule monrules[] = { /* name mfact nmaster scale layout rotate/reflect x y */ - /* example of a HiDPI laptop monitor: - { "eDP-1", 0.5, 1, 2, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, -1, -1 }, - */ /* defaults */ { NULL, 0.55, 1, 1, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, -1, -1 }, }; @@ -150,40 +147,68 @@ static const enum libinput_config_tap_button_map button_map = LIBINPUT_CONFIG_TA #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } } /* commands */ -static const char *termcmd[] = { "foot", NULL }; -static const char *menucmd[] = { "bemenu-run", NULL }; +static const char *termcmd[] = { "st", NULL }; +static const char *menucmd[] = { "dmenu_run", NULL }; +static const char *emacscmd[] = { "emacsclient", "-c", NULL }; static const Key keys[] = { /* Note that Shift changes certain key codes: c -> C, 2 -> at, etc. */ /* modifier key function argument */ - { MODKEY, XKB_KEY_p, spawn, {.v = menucmd} }, - { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_Return, spawn, {.v = termcmd} }, - { MODKEY, XKB_KEY_b, togglebar, {0}}, - { MODKEY, XKB_KEY_r, regions, SHCMD("grim -g \"$(slurp)\"") }, - { MODKEY, XKB_KEY_j, focusstack, {.i = +1} }, - { MODKEY, XKB_KEY_k, focusstack, {.i = -1} }, - { MODKEY, XKB_KEY_i, incnmaster, {.i = +1} }, - { MODKEY, XKB_KEY_d, incnmaster, {.i = -1} }, - { MODKEY, XKB_KEY_h, setmfact, {.f = -0.05} }, - { MODKEY, XKB_KEY_l, setmfact, {.f = +0.05} }, - { MODKEY, XKB_KEY_H, setcfact, {.f = +0.25} }, - { MODKEY, XKB_KEY_L, setcfact, {.f = -0.25} }, - { MODKEY, XKB_KEY_K, setcfact, {.f = 0} }, - { MODKEY, XKB_KEY_Return, zoom, {0} }, - { MODKEY, XKB_KEY_Tab, view, {0} }, - { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_C, killclient, {0} }, - { MODKEY, XKB_KEY_t, setlayout, {.v = &layouts[0]} }, - { MODKEY, XKB_KEY_f, setlayout, {.v = &layouts[1]} }, - { MODKEY, XKB_KEY_m, setlayout, {.v = &layouts[2]} }, + /* spawn programs */ + { MODKEY, XKB_KEY_t, spawn, {.v = menucmd} }, + { MODKEY, XKB_KEY_a, spawn, {.v = termcmd} }, + { MODKEY, XKB_KEY_g, spawn, {.v = emacscmd} }, + { MODKEY, XKB_KEY_c, regions, SHCMD("grim -g \"$(slurp)\" | swappy -f -") }, + { MODKEY, XKB_KEY_s, spawn, SHCMD("pass-dmenu type") }, + { MODKEY|ShiftMask, XKB_KEY_s, spawn, SHCMD("pass-dmenu clip") }, + + /* navigate windows */ + { MODKEY, XKB_KEY_n, focusstack, {.i = +1} }, + { MODKEY, XKB_KEY_i, focusstack, {.i = -1} }, + { MODKEY, XKB_KEY_e, focusmon, {.i = WLR_DIRECTION_DOWN} }, + { MODKEY, XKB_KEY_u, focusmon, {.i = WLR_DIRECTION_UP} }, + { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_E, tagmon, {.i = WLR_DIRECTION_DOWN} }, + { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_U, tagmon, {.i = WLR_DIRECTION_UP} }, + + /* control master/stack layout */ + { MODKEY, XKB_KEY_m, zoom, {0} }, + { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_u, incnmaster, {.i = +1} }, + { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_e, incnmaster, {.i = -1} }, + { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_n, setmfact, {.f = -0.05} }, + { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_i, setmfact, {.f = +0.05} }, + { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_h, setcfact, {.f = +0.25} }, + { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_comma, setcfact, {.f = -0.25} }, + { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_period, setcfact, {.f = 0} }, + + /* manage clients */ + { MODKEY, XKB_KEY_q, killclient, {0} }, + { MODKEY, XKB_KEY_x, togglefloating, {0} }, + { MODKEY, XKB_KEY_d, togglefullscreen, {0} }, + + /* layouts */ { MODKEY, XKB_KEY_space, setlayout, {0} }, - { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_space, togglefloating, {0} }, - { MODKEY, XKB_KEY_e, togglefullscreen, {0} }, + { MODKEY, XKB_KEY_w, setlayout, {.v = &layouts[0]} }, + { MODKEY, XKB_KEY_f, setlayout, {.v = &layouts[1]} }, + { MODKEY, XKB_KEY_p, setlayout, {.v = &layouts[2]} }, + + /* window manager controls */ + { MODKEY, XKB_KEY_z, togglebar, {0}}, + + /* media controls */ + { 0, XKB_KEY_XF86AudioRaiseVolume, spawn, SHCMD("pamixer -i 5") }, + { 0, XKB_KEY_XF86AudioLowerVolume, spawn, SHCMD("pamixer -d 5") }, + { 0, XKB_KEY_XF86AudioMute, spawn, SHCMD("pamixer --toggle-mute") }, + { 0, XKB_KEY_XF86MonBrightnessUp, spawn, SHCMD("sudo light -A 5") }, + { 0, XKB_KEY_XF86MonBrightnessDown, spawn, SHCMD("sudo light -U 5") }, + { 0, XKB_KEY_XF86AudioMedia, spawn, SHCMD("playerctl play-pause") }, + { 0, XKB_KEY_XF86AudioPlay, spawn, SHCMD("playerctl play-pause") }, + { 0, XKB_KEY_XF86AudioNext, spawn, SHCMD("playerctl next") }, + { 0, XKB_KEY_XF86AudioPrev, spawn, SHCMD("playerctl previous") }, + + /* Tags */ + { MODKEY, XKB_KEY_Tab, view, {0} }, { MODKEY, XKB_KEY_0, view, {.ui = ~0} }, { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_parenright, tag, {.ui = ~0} }, - { MODKEY, XKB_KEY_comma, focusmon, {.i = WLR_DIRECTION_LEFT} }, - { MODKEY, XKB_KEY_period, focusmon, {.i = WLR_DIRECTION_RIGHT} }, - { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_less, tagmon, {.i = WLR_DIRECTION_LEFT} }, - { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_greater, tagmon, {.i = WLR_DIRECTION_RIGHT} }, TAGKEYS( XKB_KEY_1, XKB_KEY_exclam, 0), TAGKEYS( XKB_KEY_2, XKB_KEY_at, 1), TAGKEYS( XKB_KEY_3, XKB_KEY_numbersign, 2),