Commit Diff


commit - fe0dcf4e2d945f528e2af9cbfc9d8eadb3b571bd
commit + 9f53ba9bae9aee077aa72cbc3fb5af6d27d20ec2
blob - b02ff034fe7ec6b73083b8f43f90c995c9d0ba9d
blob + 4e5955af2fe1ed655c3bba62b1fc22931d2df5d4
--- lex.l
+++ lex.l
@@ -53,6 +53,7 @@ KeySym key = 0;
 "ignore"	return TIGNORE;
 
 "\n"		yylineno++; return '\n';
+"*"		return '*';
 
 [-a-zA-Z0-9]+	{
 			char *ident;
blob - 0c76c3c970710a5bb2ef5bcf34fb6faaaa8e2a8f
blob + 38d035c9d29844ffb29ddd28df94616f0668778f
--- parse.y
+++ parse.y
@@ -72,7 +72,8 @@ matches		: /* empty */		{ $$ = NULL; }
 		| matches match '\n'	{ $2->next = $1; $$ = $2; }
 		;
 
-match		: TMATCH TCLASS TSTRING { $$ = new_match(MCLASS, $3); }
+match		: TMATCH '*'		{ $$ = new_match(MANY, NULL); }
+		| TMATCH TCLASS TSTRING { $$ = new_match(MCLASS, $3); }
 		;
 
 keys		: /* empty */		{ $$ = NULL; }
blob - 4deaff27e6ab5a1a8e4d28ce92a4b64fc10cd205
blob + 94e035c947c7e01e1002470e4c468cb20a6aaede
--- star-platinum.c
+++ star-platinum.c
@@ -366,6 +366,9 @@ int
 match_window(struct match *m, Window w)
 {
         switch (m->prop) {
+	case MANY:
+		return 1;
+
 	case MCLASS:
 		return window_match_class(w, m->str);
 		break;
blob - 7949d625573a5c7b59f6c7643c44965fdfd74716
blob + 4ed031b1a95ecbcdd4753c4ea0b3a6a416ac9298
--- star-platinum.h
+++ star-platinum.h
@@ -49,7 +49,8 @@ struct action {
 void			 do_action(struct action, Window, int);
 
 struct match {
-#define MCLASS		1
+#define MANY		1
+#define MCLASS		2
 	int prop;
 	char *str;
 	struct match *next;