mirror of git://git.suckless.org/dwm
made plural arrays
This commit is contained in:
parent
e40448fd63
commit
04dec4c943
|
@ -15,7 +15,7 @@
|
||||||
#define TAGS \
|
#define TAGS \
|
||||||
const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9", NULL };
|
const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9", NULL };
|
||||||
#define RULES \
|
#define RULES \
|
||||||
static Rule rule[] = { \
|
static Rule rules[] = { \
|
||||||
/* class:instance:title regex tags regex isfloating */ \
|
/* class:instance:title regex tags regex isfloating */ \
|
||||||
{ "Firefox", "3", False }, \
|
{ "Firefox", "3", False }, \
|
||||||
{ "Gimp", NULL, True }, \
|
{ "Gimp", NULL, True }, \
|
||||||
|
@ -26,7 +26,7 @@ static Rule rule[] = { \
|
||||||
/* layout(s) */
|
/* layout(s) */
|
||||||
#include "tile.h"
|
#include "tile.h"
|
||||||
#define LAYOUTS \
|
#define LAYOUTS \
|
||||||
static Layout layout[] = { \
|
static Layout layouts[] = { \
|
||||||
/* symbol function */ \
|
/* symbol function */ \
|
||||||
{ "[]=", tile }, /* first entry is default */ \
|
{ "[]=", tile }, /* first entry is default */ \
|
||||||
{ "><>", floating }, \
|
{ "><>", floating }, \
|
||||||
|
@ -37,7 +37,7 @@ static Layout layout[] = { \
|
||||||
/* key definitions */
|
/* key definitions */
|
||||||
#define MODKEY Mod1Mask
|
#define MODKEY Mod1Mask
|
||||||
#define KEYS \
|
#define KEYS \
|
||||||
Key key[] = { \
|
Key keys[] = { \
|
||||||
/* modifier key function argument */ \
|
/* modifier key function argument */ \
|
||||||
{ MODKEY, XK_p, spawn, \
|
{ MODKEY, XK_p, spawn, \
|
||||||
"exe=`dmenu_path | dmenu -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"'" \
|
"exe=`dmenu_path | dmenu -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"'" \
|
||||||
|
|
|
@ -17,7 +17,7 @@ const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9", NULL };
|
||||||
/* Query class:instance:title for regex matching info with following command:
|
/* Query class:instance:title for regex matching info with following command:
|
||||||
* xprop | awk -F '"' '/^WM_CLASS/ { printf("%s:%s:",$4,$2) }; /^WM_NAME/ { printf("%s\n",$2) }' */
|
* xprop | awk -F '"' '/^WM_CLASS/ { printf("%s:%s:",$4,$2) }; /^WM_NAME/ { printf("%s\n",$2) }' */
|
||||||
#define RULES \
|
#define RULES \
|
||||||
static Rule rule[] = { \
|
static Rule rules[] = { \
|
||||||
/* class:instance:title regex tags regex isfloating */ \
|
/* class:instance:title regex tags regex isfloating */ \
|
||||||
{ "Gimp", NULL, True }, \
|
{ "Gimp", NULL, True }, \
|
||||||
{ "MPlayer", NULL, True }, \
|
{ "MPlayer", NULL, True }, \
|
||||||
|
@ -27,7 +27,7 @@ static Rule rule[] = { \
|
||||||
/* layout(s) */
|
/* layout(s) */
|
||||||
#include "tile.h"
|
#include "tile.h"
|
||||||
#define LAYOUTS \
|
#define LAYOUTS \
|
||||||
static Layout layout[] = { \
|
static Layout layouts[] = { \
|
||||||
/* symbol function */ \
|
/* symbol function */ \
|
||||||
{ "[]=", tile }, /* first entry is default */ \
|
{ "[]=", tile }, /* first entry is default */ \
|
||||||
{ "><>", floating }, \
|
{ "><>", floating }, \
|
||||||
|
@ -38,7 +38,7 @@ static Layout layout[] = { \
|
||||||
/* key definitions */
|
/* key definitions */
|
||||||
#define MODKEY Mod1Mask
|
#define MODKEY Mod1Mask
|
||||||
#define KEYS \
|
#define KEYS \
|
||||||
Key key[] = { \
|
Key keys[] = { \
|
||||||
/* modifier key function argument */ \
|
/* modifier key function argument */ \
|
||||||
{ MODKEY|ShiftMask, XK_Return, spawn, "exec xterm" }, \
|
{ MODKEY|ShiftMask, XK_Return, spawn, "exec xterm" }, \
|
||||||
{ MODKEY, XK_p, spawn, "exe=`dmenu_path | dmenu` && exec $exe" }, \
|
{ MODKEY, XK_p, spawn, "exe=`dmenu_path | dmenu` && exec $exe" }, \
|
||||||
|
|
22
event.c
22
event.c
|
@ -252,18 +252,18 @@ expose(XEvent *e) {
|
||||||
static void
|
static void
|
||||||
keypress(XEvent *e) {
|
keypress(XEvent *e) {
|
||||||
KEYS
|
KEYS
|
||||||
unsigned int len = sizeof key / sizeof key[0];
|
unsigned int len = sizeof keys / sizeof keys[0];
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
KeySym keysym;
|
KeySym keysym;
|
||||||
XKeyEvent *ev = &e->xkey;
|
XKeyEvent *ev = &e->xkey;
|
||||||
|
|
||||||
keysym = XKeycodeToKeysym(dpy, (KeyCode)ev->keycode, 0);
|
keysym = XKeycodeToKeysym(dpy, (KeyCode)ev->keycode, 0);
|
||||||
for(i = 0; i < len; i++)
|
for(i = 0; i < len; i++)
|
||||||
if(keysym == key[i].keysym
|
if(keysym == keys[i].keysym
|
||||||
&& CLEANMASK(key[i].mod) == CLEANMASK(ev->state))
|
&& CLEANMASK(keys[i].mod) == CLEANMASK(ev->state))
|
||||||
{
|
{
|
||||||
if(key[i].func)
|
if(keys[i].func)
|
||||||
key[i].func(key[i].arg);
|
keys[i].func(keys[i].arg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -358,20 +358,20 @@ void (*handler[LASTEvent]) (XEvent *) = {
|
||||||
void
|
void
|
||||||
grabkeys(void) {
|
grabkeys(void) {
|
||||||
KEYS
|
KEYS
|
||||||
unsigned int len = sizeof key / sizeof key[0];
|
unsigned int len = sizeof keys / sizeof keys[0];
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
KeyCode code;
|
KeyCode code;
|
||||||
|
|
||||||
XUngrabKey(dpy, AnyKey, AnyModifier, root);
|
XUngrabKey(dpy, AnyKey, AnyModifier, root);
|
||||||
for(i = 0; i < len; i++) {
|
for(i = 0; i < len; i++) {
|
||||||
code = XKeysymToKeycode(dpy, key[i].keysym);
|
code = XKeysymToKeycode(dpy, keys[i].keysym);
|
||||||
XGrabKey(dpy, code, key[i].mod, root, True,
|
XGrabKey(dpy, code, keys[i].mod, root, True,
|
||||||
GrabModeAsync, GrabModeAsync);
|
GrabModeAsync, GrabModeAsync);
|
||||||
XGrabKey(dpy, code, key[i].mod | LockMask, root, True,
|
XGrabKey(dpy, code, keys[i].mod | LockMask, root, True,
|
||||||
GrabModeAsync, GrabModeAsync);
|
GrabModeAsync, GrabModeAsync);
|
||||||
XGrabKey(dpy, code, key[i].mod | numlockmask, root, True,
|
XGrabKey(dpy, code, keys[i].mod | numlockmask, root, True,
|
||||||
GrabModeAsync, GrabModeAsync);
|
GrabModeAsync, GrabModeAsync);
|
||||||
XGrabKey(dpy, code, key[i].mod | numlockmask | LockMask, root, True,
|
XGrabKey(dpy, code, keys[i].mod | numlockmask | LockMask, root, True,
|
||||||
GrabModeAsync, GrabModeAsync);
|
GrabModeAsync, GrabModeAsync);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
12
layout.c
12
layout.c
|
@ -94,10 +94,10 @@ void
|
||||||
initlayouts(void) {
|
initlayouts(void) {
|
||||||
unsigned int i, w;
|
unsigned int i, w;
|
||||||
|
|
||||||
lt = &layout[0];
|
lt = &layouts[0];
|
||||||
nlayouts = sizeof layout / sizeof layout[0];
|
nlayouts = sizeof layouts / sizeof layouts[0];
|
||||||
for(blw = i = 0; i < nlayouts; i++) {
|
for(blw = i = 0; i < nlayouts; i++) {
|
||||||
w = textw(layout[i].symbol);
|
w = textw(layouts[i].symbol);
|
||||||
if(w > blw)
|
if(w > blw)
|
||||||
blw = w;
|
blw = w;
|
||||||
}
|
}
|
||||||
|
@ -144,14 +144,14 @@ setlayout(const char *arg) {
|
||||||
|
|
||||||
if(!arg) {
|
if(!arg) {
|
||||||
lt++;
|
lt++;
|
||||||
if(lt == layout + nlayouts)
|
if(lt == layouts + nlayouts)
|
||||||
lt = layout;
|
lt = layouts;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
i = atoi(arg);
|
i = atoi(arg);
|
||||||
if(i < 0 || i >= nlayouts)
|
if(i < 0 || i >= nlayouts)
|
||||||
return;
|
return;
|
||||||
lt = &layout[i];
|
lt = &layouts[i];
|
||||||
}
|
}
|
||||||
if(sel)
|
if(sel)
|
||||||
arrange();
|
arrange();
|
||||||
|
|
12
tag.c
12
tag.c
|
@ -59,19 +59,19 @@ compileregs(void) {
|
||||||
|
|
||||||
if(regs)
|
if(regs)
|
||||||
return;
|
return;
|
||||||
nrules = sizeof rule / sizeof rule[0];
|
nrules = sizeof rules / sizeof rules[0];
|
||||||
regs = emallocz(nrules * sizeof(Regs));
|
regs = emallocz(nrules * sizeof(Regs));
|
||||||
for(i = 0; i < nrules; i++) {
|
for(i = 0; i < nrules; i++) {
|
||||||
if(rule[i].prop) {
|
if(rules[i].prop) {
|
||||||
reg = emallocz(sizeof(regex_t));
|
reg = emallocz(sizeof(regex_t));
|
||||||
if(regcomp(reg, rule[i].prop, REG_EXTENDED))
|
if(regcomp(reg, rules[i].prop, REG_EXTENDED))
|
||||||
free(reg);
|
free(reg);
|
||||||
else
|
else
|
||||||
regs[i].propregex = reg;
|
regs[i].propregex = reg;
|
||||||
}
|
}
|
||||||
if(rule[i].tags) {
|
if(rules[i].tags) {
|
||||||
reg = emallocz(sizeof(regex_t));
|
reg = emallocz(sizeof(regex_t));
|
||||||
if(regcomp(reg, rule[i].tags, REG_EXTENDED))
|
if(regcomp(reg, rules[i].tags, REG_EXTENDED))
|
||||||
free(reg);
|
free(reg);
|
||||||
else
|
else
|
||||||
regs[i].tagregex = reg;
|
regs[i].tagregex = reg;
|
||||||
|
@ -124,7 +124,7 @@ settags(Client *c, Client *trans) {
|
||||||
ch.res_name ? ch.res_name : "", c->name);
|
ch.res_name ? ch.res_name : "", c->name);
|
||||||
for(i = 0; i < nrules; i++)
|
for(i = 0; i < nrules; i++)
|
||||||
if(regs[i].propregex && !regexec(regs[i].propregex, prop, 1, &tmp, 0)) {
|
if(regs[i].propregex && !regexec(regs[i].propregex, prop, 1, &tmp, 0)) {
|
||||||
c->isfloating = rule[i].isfloating;
|
c->isfloating = rules[i].isfloating;
|
||||||
for(j = 0; regs[i].tagregex && j < ntags; j++) {
|
for(j = 0; regs[i].tagregex && j < ntags; j++) {
|
||||||
if(!regexec(regs[i].tagregex, tags[j], 1, &tmp, 0)) {
|
if(!regexec(regs[i].tagregex, tags[j], 1, &tmp, 0)) {
|
||||||
matched = True;
|
matched = True;
|
||||||
|
|
Loading…
Reference in New Issue