summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mumi/xapian.scm11
1 files changed, 9 insertions, 2 deletions
diff --git a/mumi/xapian.scm b/mumi/xapian.scm
index b00e8ee..9630274 100644
--- a/mumi/xapian.scm
+++ b/mumi/xapian.scm
@@ -205,9 +205,16 @@ messages and index their contents in the Xapian database at DBPATH."
;; closes the database once we're done.
(call-with-database dbpath
(lambda (db)
- (let (;; Parse querystring passing a stemmer and suitable
+ (let* ((querystring*
+ (string-join (map (lambda (token)
+ (if (or (string-prefix? "date:" token)
+ (string-prefix? "mdate:" token))
+ (sanitize-date-range token)
+ token))
+ (string-tokenize querystring))))
+ ;; Parse querystring passing a stemmer and suitable
;; prefixes for field search.
- (query (parse-query* querystring
+ (query (parse-query* querystring*
#:stemmer (make-stem "en")
#:prefixes '(("submitter" . "A")
("author" . "XA")