From 85264c9ab3052dd844016d3ec44cb8af43dd5869 Mon Sep 17 00:00:00 2001 From: Folker Bernitt Date: Wed, 8 Oct 2014 18:06:28 +0200 Subject: Added whoosh as search engine (issue #94). --- service/pixelated/search_query.py | 58 --------------------------------------- 1 file changed, 58 deletions(-) delete mode 100644 service/pixelated/search_query.py (limited to 'service/pixelated/search_query.py') diff --git a/service/pixelated/search_query.py b/service/pixelated/search_query.py deleted file mode 100644 index 278e1f2f..00000000 --- a/service/pixelated/search_query.py +++ /dev/null @@ -1,58 +0,0 @@ -# -# Copyright (c) 2014 ThoughtWorks, Inc. -# -# Pixelated is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# Pixelated is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with Pixelated. If not, see . -from scanner import StringScanner, StringRegexp -import re - - -def compile(query): - compiled = {"tags": [], "not_tags": []} - sanitized_query = re.sub(r"['\"]", "", query.encode('utf8')) - scanner = StringScanner(sanitized_query) - first_token = True - - while not scanner.is_eos: - token = scanner.scan(_next_token()) - - if not token: - scanner.skip(_separators()) - continue - - if ":" in token: - compiled = _compile_tag(compiled, token) - elif first_token: - compiled["general"] = token - - if not first_token: - first_token = True - - return compiled - - -def _next_token(): - return StringRegexp('[^\s]+') - - -def _separators(): - return StringRegexp('[\s&]+') - - -def _compile_tag(compiled, token): - tag = token.split(":").pop() - if token[0] == "-": - compiled["not_tags"].append(tag) - else: - compiled["tags"].append(tag) - return compiled -- cgit v1.2.3