about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--man/mpick.11
-rw-r--r--mpick.c5
2 files changed, 6 insertions, 0 deletions
diff --git a/man/mpick.1 b/man/mpick.1
index 2ad942e..64a63d1 100644
--- a/man/mpick.1
+++ b/man/mpick.1
@@ -105,6 +105,7 @@ tests are given by the following EBNF:
              | <strprop> <strop> <str>
              | prune             -- do not match further messages in thread
              | print             -- always true value
+             | skip              -- always false value
 
 <flagprop> ::= child | draft | flagged | info | new | parent | passed
              | replied  | seen | selected | trashed
diff --git a/mpick.c b/mpick.c
index 0427519..c4a4207 100644
--- a/mpick.c
+++ b/mpick.c
@@ -274,6 +274,11 @@ parse_inner()
 	} else if (token("print")) {
 		struct expr *e = mkexpr(EXPR_PRINT);
 		return e;
+	} else if (token("skip")) {
+		struct expr *e = mkexpr(EXPR_PRINT);
+		struct expr *not = mkexpr(EXPR_NOT);
+		not->a.expr = e;
+		return not;
 	} else if (token("!")) {
 		struct expr *e = parse_cmp();
 		struct expr *not = mkexpr(EXPR_NOT);