-default { yylval.number = MODE_DEFAULT; return TOKCONTAINERMODE; }
-stacking { yylval.number = MODE_STACK; return TOKCONTAINERMODE; }
-tabbed { yylval.number = MODE_TABBED; return TOKCONTAINERMODE; }
+popup_during_fullscreen { return TOK_POPUP_DURING_FULLSCREEN; }
+ignore { return TOK_IGNORE; }
+leave_fullscreen { return TOK_LEAVE_FULLSCREEN; }
+for_window {
+ /* Example: for_window [class="urxvt"] border none
+ *
+ * First, we wait for the ']' that finishes a match (FOR_WINDOW_COND)
+ * Then, we require a whitespace (EAT_WHITESPACE)
+ * And the rest of the line is parsed as a string
+ */
+ yy_push_state(WANT_STRING);
+ yy_push_state(EAT_WHITESPACE);
+ yy_push_state(FOR_WINDOW_COND);
+ return TOK_FOR_WINDOW;
+ }
+default { /* yylval.number = MODE_DEFAULT; */return TOK_DEFAULT; }
+stacking { /* yylval.number = MODE_STACK; */return TOK_STACKING; }
+stacked { return TOK_STACKING; }
+tabbed { /* yylval.number = MODE_TABBED; */return TOK_TABBED; }