소스 검색

Merge pull request #166 from Cqoicebordel/non-exclusif-bang

Add non exclusif bang
Adam Tauber 10 년 전
부모
커밋
b47b8cc2c6
2개의 변경된 파일6개의 추가작업 그리고 2개의 파일을 삭제
  1. 5
    1
      searx/query.py
  2. 1
    1
      searx/search.py

+ 5
- 1
searx/query.py 파일 보기

@@ -38,6 +38,7 @@ class Query(object):
38 38
         self.query_parts = []
39 39
         self.engines = []
40 40
         self.languages = []
41
+        self.specific = False
41 42
 
42 43
     # parse query, if tags are set, which
43 44
     # change the serch engine or search-language
@@ -83,7 +84,7 @@ class Query(object):
83 84
                         break
84 85
 
85 86
             # this force a engine or category
86
-            if query_part[0] == '!':
87
+            if query_part[0] == '!' or query_part[0] == '?':
87 88
                 prefix = query_part[1:].replace('_', ' ')
88 89
 
89 90
                 # check if prefix is equal with engine shortcut
@@ -110,6 +111,9 @@ class Query(object):
110 111
                                         for engine in categories[prefix]
111 112
                                         if engine not in self.blocked_engines)
112 113
 
114
+            if query_part[0] == '!':
115
+                self.specific = True
116
+
113 117
             # append query part to query_part list
114 118
             self.query_parts.append(query_part)
115 119
 

+ 1
- 1
searx/search.py 파일 보기

@@ -373,7 +373,7 @@ class Search(object):
373 373
 
374 374
         # if engines are calculated from query,
375 375
         # set categories by using that informations
376
-        if self.engines:
376
+        if self.engines and query_obj.specific:
377 377
             self.categories = list(set(engine['category']
378 378
                                        for engine in self.engines))
379 379