From 650642b4cf43b4390c1332c930124eda88ea4109 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Sun, 26 Jun 2022 01:32:13 +0530 Subject: bin: Assume is:open in queries. * bin/tissue (tissue-search): Assume is:open in queries. --- bin/tissue | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/bin/tissue b/bin/tissue index 8c13114..95c1f9a 100755 --- a/bin/tissue +++ b/bin/tissue @@ -176,14 +176,20 @@ Search issues using SEARCH-QUERY. (call-with-database %xapian-index (lambda (db) (let* ((stemmer (make-stem "en")) - (query-string (string-join args)) (query (parse-query - ;; If issue state is not mentioned in query, - ;; assume is:open. - (cond - ((string-null? query-string) "is:open") - ((string-contains-ci query-string "is:") query-string) - (else (format #f "is:open AND (~a)" query-string))) + ;; When query does not mention type or state, + ;; assume is:open. Assuming is:open is + ;; implicitly assuming type:issue since only + ;; issues can have is:open. + (if (every string-null? args) + "is:open" + (string-join (if (any (lambda (query-string) + (or (string-contains-ci query-string "type:") + (string-contains-ci query-string "is:"))) + args) + args + (cons "is:open" args)) + " AND ")) #:stemmer stemmer #:prefixes '(("type" . "XT") ("title" . "S") -- cgit v1.2.3