aboutsummaryrefslogtreecommitdiff
path: root/sys/cmd/wm/config.h
blob: 3c8c4d94cc31201465bb44f2dde743d75e7268fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/* appearance */
CONFIG(int,   sloppyfocus,    1);
CONFIG(int,   borderpixel,    1);
CONFIG(float, rootcolor[],   {0.3, 0.3, 0.3, 1.0});
CONFIG(float, bordercolor[], {0.5, 0.5, 0.5, 1.0});
CONFIG(float, focuscolor[],  {1.0, 0.0, 0.0, 1.0});

/* sampling */
CONFIG(int,   repeat_rate,   25);
CONFIG(int,   repeat_delay,  600);

/* commands */
CONFIG(char*, termcommand[], { "alacritty",  nil });

/* layouts */
CONFIG(Layout, layouts[], {
    /* symbol     arrange */
    { "[]=",      tile },
    { "><>",      nil  },    /* no layout function means floating behavior */
});

/* monitors
 * The order in which monitors are defined determines their position.
 * non-configured monitors are always added to the left. */
CONFIG(MonitorRule, monitorrule[], {
    /* name    layout,       x, y, scale,       transform             master */
    { nil,  &cfg·layouts[0], 0, 0, 1,   WL_OUTPUT_TRANSFORM_NORMAL, {0.55, 1} },
});
CONFIG(MonitorRule*, endmonitorrule, arrend(cfg·monitorrule));

/* keybindings */
#define MOD(a) WLR_MODIFIER_##a
#define MODKEY WLR_MODIFIER_ALT
#define KEY(a) XKB_KEY_##a

CONFIG(Key, binding[], {
    /* modifier                  key               function          argument */
    { MODKEY,                KEY(Return),           spawn,       {.v = cfg·termcommand} },
    { MODKEY|MOD(SHIFT),     KEY(Q),                quit,        {.v = nil} },
});
CONFIG(Key*, endbinding, arrend(cfg·binding));

#undef MOD
#undef MODKEY
#undef KEY