diff options
Diffstat (limited to 'config.def.h')
| -rw-r--r-- | config.def.h | 190 |
1 files changed, 127 insertions, 63 deletions
diff --git a/config.def.h b/config.def.h index eba1cc2..309e62a 100644 --- a/config.def.h +++ b/config.def.h @@ -6,35 +6,58 @@ /* appearance */ static const int sloppyfocus = 1; /* focus follows mouse */ static const int bypass_surface_visibility = 0; /* 1 means idle inhibitors will disable idle tracking even if it's surface isn't visible */ -static const unsigned int borderpx = 1; /* border pixel of windows */ -static const float rootcolor[] = COLOR(0x222222ff); +static const unsigned int borderpx = 0; /* border pixel of windows */ +static const int smartgaps = 0; /* 1 means no outer gap when there is only one window */ +static int gaps = 1; /* 1 means gaps between windows are added */ +static const unsigned int gappx = 10; /* gap pixel between windows */ +//static const float rootcolor[] = COLOR(0x222222ff); +static const float rootcolor[] = COLOR(0x000000ff); // from bar patch? static const float bordercolor[] = COLOR(0x444444ff); static const float focuscolor[] = COLOR(0x005577ff); static const float urgentcolor[] = COLOR(0xff0000ff); /* This conforms to the xdg-protocol. Set the alpha to zero to restore the old behavior */ static const float fullscreen_bg[] = {0.0f, 0.0f, 0.0f, 1.0f}; /* You can also use glsl colors */ -static const float default_opacity_unfocus = 0.70f; +static const float default_opacity_unfocus = 0.80f; static const float default_opacity_focus = 1.00f; +// from bar patch +static const int showbar = 1; /* 0 means no bar */ +static const int topbar = 1; /* 0 means bottom bar */ +static const char *fonts[] = {"Maple Mono NL:size=12"}; +static uint32_t colors[][3] = { + /* fg bg border */ + [SchemeNorm] = { 0xaebbccff, 0x00000000, 0x00000000 }, + [SchemeSel] = { 0xb1c855ff, 0x52453590, 0x00000000 }, + [SchemeUrg] = { 0, 0, 0x00000000 }, +}; + +/* tagging */ +static char *tags[] = { "🌎", "🍁", "🍂", "⛵", "𝄇" }; +#define TAGCOUNT (sizeof(tags) / sizeof(tags[0])) -/* tagging - TAGCOUNT must be no greater than 31 */ -#define TAGCOUNT (9) /* logging */ static int log_level = WLR_ERROR; static const Rule rules[] = { - /* app_id title tags mask isfloating alpha focus alpha unfocus monitor */ - { "Gimp_EXAMPLE", NULL, 0, 1, 1.00, 0.20, -1 }, /* Start on currently visible tags floating, not tiled */ - { "firefox_EXAMPLE", NULL, 1 << 8, 0, 1.00, 1.00, -1 }, /* Start on ONLY tag "9" */ - /* default/example rule: can be changed but cannot be eliminated; at least one rule must exist */ + /* app_id title tags mask isfloating monitor */ + /* app_id title tags mask isfloating alpha focus alpha unfocus monitor */ + { "gimp", NULL, 0, 1, default_opacity_focus, default_opacity_unfocus, -1 }, + { "mpv", NULL, 0, 1, 1, 1, -1 }, +// { "Minecraft", NULL, 0, 0, 1, 1, -1 }, +// { "R_x11", NULL, 0, 0, 1, 1, -1 }, + { "librewolf", NULL, 1, 0, default_opacity_focus, default_opacity_unfocus, -1 }, + { "thunderbird",NULL, 1 << 1, 0, default_opacity_focus, default_opacity_unfocus, 0 }, + { "claws-mail",NULL, 1 << 1, 0, default_opacity_focus, default_opacity_unfocus, 0 }, + { "pwvucontrol",NULL, 1 << 4, 0, 1, 1, 0 }, + /* default/example rule: can be changed but cannot be eliminated; at least one rule must exist */ }; /* layout(s) */ static const Layout layouts[] = { - /* symbol arrange function */ - { "[]=", tile }, - { "><>", NULL }, /* no layout function means floating behavior */ - { "[M]", monocle }, + /* symbol arrange function */ + { "[]=", tile }, + { "><>", NULL }, /* no layout function means floating behavior */ + { "[M]", monocle }, }; /* monitors */ @@ -42,10 +65,10 @@ static const Layout layouts[] = { * WARNING: negative values other than (-1, -1) cause problems with Xwayland clients due to * https://gitlab.freedesktop.org/xorg/xserver/-/issues/899 */ static const MonitorRule monrules[] = { - /* name mfact nmaster scale layout rotate/reflect x y + /* name mfact nmaster scale layout rotate/reflect x y * example of a HiDPI laptop monitor: { "eDP-1", 0.5f, 1, 2, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, -1, -1 }, */ - { NULL, 0.55f, 1, 1, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, -1, -1 }, + { NULL, 0.55f, 1, 1, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, -1, -1 }, /* default monitor rule: can be changed but cannot be eliminated; at least one monitor rule must exist */ }; @@ -53,13 +76,14 @@ static const MonitorRule monrules[] = { static const struct xkb_rule_names xkb_rules = { /* can specify fields: rules, model, layout, variant, options */ /* example: - .options = "ctrl:nocaps", - */ - .options = NULL, + .options = "ctrl:nocaps", */ + // set capslock to escape + // maybe can repurpose windows key here too ... + .options = "caps:escape", }; static const int repeat_rate = 25; -static const int repeat_delay = 600; +static const int repeat_delay = 300; /* Trackpad */ static const int tap_to_click = 1; @@ -118,52 +142,84 @@ static const enum libinput_config_tap_button_map button_map = LIBINPUT_CONFIG_TA /* commands */ static const char *termcmd[] = { "foot", NULL }; -static const char *menucmd[] = { "wmenu-run", NULL }; +static const char *menucmd[] = { + "wmenu-run", + "-i", + "-f", "Maple Mono NL 12", + "-m", "aebbccff", + "-M", "6d792dff", + "-n", "b1c855ff", + "-N", "524535ff", + "-s", "aebbccff", + "-S", "6d792dff", + "-p", "Run:", + NULL +}; +static const char *passcmd[] = { "passmenu", NULL }; +static const char *otpcmd[] = { "otp", NULL }; +static const char *webcmd[] = { "web", NULL }; +static const char *radarcmd[] = { "radar", NULL }; + +#include "shiftview.c" static const Key keys[] = { /* Note that Shift changes certain key codes: 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_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.05f} }, - { MODKEY, XKB_KEY_l, setmfact, {.f = +0.05f} }, - { 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]} }, - // From client-opacity-focus patch - { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_k, setopacityunfocus, {.f = +0.1f} }, - { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_j, setopacityunfocus, {.f = -0.1f} }, - { MODKEY|WLR_MODIFIER_CTRL|WLR_MODIFIER_SHIFT, XKB_KEY_K, setopacityfocus, {.f = +0.1f} }, - { MODKEY|WLR_MODIFIER_CTRL|WLR_MODIFIER_SHIFT, XKB_KEY_J, setopacityfocus, {.f = -0.1f} }, - { MODKEY, XKB_KEY_space, setlayout, {0} }, - { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_space, togglefloating, {0} }, - { MODKEY, XKB_KEY_e, togglefullscreen, {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), - TAGKEYS( XKB_KEY_4, XKB_KEY_dollar, 3), - TAGKEYS( XKB_KEY_5, XKB_KEY_percent, 4), - TAGKEYS( XKB_KEY_6, XKB_KEY_asciicircum, 5), - TAGKEYS( XKB_KEY_7, XKB_KEY_ampersand, 6), - TAGKEYS( XKB_KEY_8, XKB_KEY_asterisk, 7), - TAGKEYS( XKB_KEY_9, XKB_KEY_parenleft, 8), - { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_q, quit, {0} }, + /* modifier key function argument */ +// command launchers + { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_p, spawn, {.v = passcmd } }, + { MODKEY, XKB_KEY_o, spawn, {.v = otpcmd } }, + { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_A, spawn, {.v = webcmd } }, + { MODKEY, XKB_KEY_r, spawn, {.v = radarcmd } }, +// basic functionality + { 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_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|WLR_MODIFIER_SHIFT, XKB_KEY_j, movestack, {.i = +1} }, + { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_k, movestack, {.i = -1} }, + { MODKEY, XKB_KEY_h, setmfact, {.f = -0.05f} }, + { MODKEY, XKB_KEY_l, setmfact, {.f = +0.05f} }, + { MODKEY, XKB_KEY_Return, zoom, {0} }, // not sure what this does + { MODKEY, XKB_KEY_Tab, view, {0} }, +// shiftview + { MODKEY, XKB_KEY_q, shiftview, { .i = -1 } }, + { MODKEY, XKB_KEY_w, shiftview, { .i = 1 } }, +// gaps + { MODKEY, XKB_KEY_g, togglegaps, {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]} }, // I never use this so disabling + { MODKEY, XKB_KEY_m, setlayout, {.v = &layouts[2]} }, + { MODKEY, XKB_KEY_space, setlayout, {0} }, + { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_space, togglefloating, {0} }, +// { MODKEY, XKB_KEY_e, togglefullscreen, {0} }, // instead of this I use combination of monocle, gaps, bar + { 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} }, +// From client-opacity-focus patch + { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_k, setopacityunfocus, {.f = +0.1f} }, + { MODKEY|WLR_MODIFIER_CTRL, XKB_KEY_j, setopacityunfocus, {.f = -0.1f} }, + { MODKEY|WLR_MODIFIER_CTRL|WLR_MODIFIER_SHIFT, XKB_KEY_K, setopacityfocus, {.f = +0.1f} }, + { MODKEY|WLR_MODIFIER_CTRL|WLR_MODIFIER_SHIFT, XKB_KEY_J, setopacityfocus, {.f = -0.1f} }, + TAGKEYS( XKB_KEY_1, XKB_KEY_exclam, 0 ), + TAGKEYS( XKB_KEY_2, XKB_KEY_at, 1 ), + TAGKEYS( XKB_KEY_3, XKB_KEY_numbersign, 2 ), + TAGKEYS( XKB_KEY_4, XKB_KEY_dollar, 3 ), + TAGKEYS( XKB_KEY_5, XKB_KEY_percent, 4 ), +// TAGKEYS( XKB_KEY_6, XKB_KEY_asciicircum, 5 ), +// TAGKEYS( XKB_KEY_7, XKB_KEY_ampersand, 6 ), +// TAGKEYS( XKB_KEY_8, XKB_KEY_asterisk, 7 ), +// TAGKEYS( XKB_KEY_9, XKB_KEY_parenleft, 8 ), + { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_Q, quit, {0} }, /* Ctrl-Alt-Backspace and Ctrl-Alt-Fx used to be handled by X server */ - { WLR_MODIFIER_CTRL|WLR_MODIFIER_ALT,XKB_KEY_Terminate_Server, quit, {0} }, + { WLR_MODIFIER_CTRL|WLR_MODIFIER_ALT,XKB_KEY_Terminate_Server, quit, {0} }, /* Ctrl-Alt-Fx is used to switch to another VT, if you don't know what a VT is * do not remove them. */ @@ -173,7 +229,15 @@ static const Key keys[] = { }; static const Button buttons[] = { - { MODKEY, BTN_LEFT, moveresize, {.ui = CurMove} }, - { MODKEY, BTN_MIDDLE, togglefloating, {0} }, - { MODKEY, BTN_RIGHT, moveresize, {.ui = CurResize} }, + { ClkLtSymbol, 0, BTN_LEFT, setlayout, {.v = &layouts[0]} }, + { ClkLtSymbol, 0, BTN_RIGHT, setlayout, {.v = &layouts[2]} }, + { ClkTitle, 0, BTN_MIDDLE, zoom, {0} }, + { ClkStatus, 0, BTN_MIDDLE, spawn, {.v = termcmd} }, + { ClkClient, MODKEY, BTN_LEFT, moveresize, {.ui = CurMove} }, + { ClkClient, MODKEY, BTN_MIDDLE, togglefloating, {0} }, + { ClkClient, MODKEY, BTN_RIGHT, moveresize, {.ui = CurResize} }, + { ClkTagBar, 0, BTN_LEFT, view, {0} }, + { ClkTagBar, 0, BTN_RIGHT, toggleview, {0} }, + { ClkTagBar, MODKEY, BTN_LEFT, tag, {0} }, + { ClkTagBar, MODKEY, BTN_RIGHT, toggletag, {0} }, }; |
