diff options
-rw-r--r-- | mumi/xapian.scm | 11 |
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") |