all repos — ryudo @ 836136e1533801b6f2abe59fdb77d7cc9f28201f

the floatiling window manager that flows; fork of rio from plan9port

config.h (raw)

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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
/***********************
 * RYUDO CONFIGURATION *
 **********************/

/***************
 * LOOK & FEEL *
 **************/
 
/* Border colors */
#define SBORDERCOL 0x17736C
#define BORDERCOL 0x000000

/* Window sweep border color */
#define GHOSTCOL 0x797979

/* Hold mode border colors -- if you don't use 9term you don't need to
 * care what these are
 */
#define SHOLDCOL 0xC8C8C8
#define HOLDCOL 0x444444

/* Border width in pixels */
#define BORDER 4

/* Gap size, in pixels, for pseudo-tiling. Should be even */
#define GAPSZ 4

/* Menu border width and color */
#define MENUBORDER 0
#define MBORDERCOL 0x000000

/* Normal menu colors */
#define MENUFGCOL 0x797979
#define MENUBGCOL 0x000000

/* Selected menu colors */
#define SMENUFGCOL 0x000000
#define SMENUBGCOL 0x1F9B92

// clang-format off

/* List of fonts to try, in order, for rendering the menus.
 * Remember the backslash at the end of non-terminating lines!
 */

#define FONTLIST {                          \
    "*-lucidatypewriter-medium-*-12-*-75-*",\
    "lucm.latin1.9",                        \
    "blit",                                 \
    "*-lucidatypewriter-bold-*-14-*-75-*",  \
    "9x15bold",                             \
    "fixed",                                \
    "*",                                    \
    0                                       \
  }

/* Names for the virtual desktops. You can define all 12, or only
 * as many as you use.
 * Remember the backslash at the end of non-terminating lines!
 */

#define VIRTUALLIST {\
  "One",             \
  "Two",             \
  "Three",           \
  "Four",            \
  "Five",            \
  "Six",             \
  "Seven",           \
  "Eight",           \
  "Nine",            \
  "Ten",             \
  "Eleven",          \
  "Twelve",          \
  0                  \
}

// clang-format on
  
/************
 * BEHAVIOR *
 ***********/

/* This sets the size ratio for windows spawned via keyboard or
 * center-snapped; CENTERNUM should be >= 2, so use 2/4 instead of 1/2
 */
#define CENTERNUM 2
#define CENTERDEN 3

/* Centered windows should maximize vertically by default?
 * This is the behavior of new windows spawned with the launch shortcut
 * and of centered windows with SHORTCUTMOD + SNAPCENTER_KEY --
 * use SHORTCUTMOD + SHIFT + SNAPCENTER_KEY to get the other behavior.
 */
#define CENTERVMAX

/* Show 'Maximize' menuitem? */
//#define SHOWMAX

/* Show 'Stick' menuitem? */
//#define SHOWSTICK

/* Notify on virtual desktop switch? */
#define VIRTNOTIFY

/* The summary and message to pass to the notifcation daeomon */
#define VIRTHEADER "virtual"
#define VIRTMSG "[%s]"

// clang-format off

/* List of window classes to spawn as sticky;
 * Class values for currently open windows are conveniently shown in the last
 * column of the 'xshove' command given with no arguments.
 * Remember the backslash at the end of non-terminating lines!
 */

/* You can remove/comment the entire macro to improve performance if you
 * don't use this feature!
 */

#define AUTOSTICK {\
   "XOsview",      \
   "XClock",       \
    0              \
}

// clang-format on

/***************
 * KEYBINDINGS *
 **************/

/* Modifier key and associated modifier bits;
 * Shift = (1<<0)
 * Lock = (1<<1)
 * Control = (1<<2)
 * Mod1 = (1<<3)
 * Mod2 = (1<<4)
 * Mod3 = (1<<5)
 * Mod4 = (1<<6)
 * Mod5 = (1<<7)
 */
 
#define SHORTCUTMOD Mod4Mask
#define MODBITS (1 << 6)

/* Shortcut keys */
/* Any of these can be commented out/omitted if you want to free up
 * your keyboard shortcuts for other things. Alt-tab is always bound.
 */
 
#define MAX_KEY XK_m
#define ICON_KEY XK_i
#define UNHIDE_KEY XK_u
#define MOVE_KEY XK_v
#define RESIZE_KEY XK_r
#define DESTROY_KEY XK_d
#define STICK_KEY XK_s
#define ZOOM_KEY XK_z

#define SNAPLEFT_KEY XK_h
#define SNAPRIGHT_KEY XK_l
#define SNAPTOP_KEY XK_k
#define SNAPBOTTOM_KEY XK_j

#define SNAPTOPLEFT_KEY XK_q
#define SNAPBOTTOMLEFT_KEY XK_w
#define SNAPBOTTOMRIGHT_KEY XK_o
#define SNAPTOPRIGHT_KEY XK_p

#define SNAPCENTER_KEY XK_c

#define NEXTVIRT_KEY XK_Right
#define PREVVIRT_KEY XK_Left

#define LAUNCH_KEY XK_slash

// ignore these for now -- this is a feature in development
#define STICKYTOFRONT_KEY XK_t
#define STICKYTOBACK_KEY XK_b