summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorarza <arza@arza.us>2023-10-22 22:12:14 +0300
committerarza <arza@arza.us>2023-10-22 22:12:14 +0300
commita0d1dd0f10bc72c9741370eaf1e4f75713ca5d42 (patch)
treee1d411ef02a105006635a1162b3a26f1b8fc03a7
parent6671dbf2b4c5c79bc118fa5f2d37c29d95734952 (diff)
downloadqutebrowser-a0d1dd0f10bc72c9741370eaf1e4f75713ca5d42.tar.gz
qutebrowser-a0d1dd0f10bc72c9741370eaf1e4f75713ca5d42.zip
Add a comment
-rw-r--r--qutebrowser/completion/models/listcategory.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/qutebrowser/completion/models/listcategory.py b/qutebrowser/completion/models/listcategory.py
index a8798ee55..353018d91 100644
--- a/qutebrowser/completion/models/listcategory.py
+++ b/qutebrowser/completion/models/listcategory.py
@@ -61,6 +61,10 @@ class ListCategory(QSortFilterProxyModel):
log.completion.warning(f"Trimming {len(val)}-char pattern to 5000")
val = val[:5000]
self._pattern = val
+
+ # Positive lookahead per search term. This means that all search terms must
+ # be matched but they can be matched anywhere in the string, so they can be
+ # in any order. For example "foo bar" -> "(?=.*foo)(?=.*bar)"
val = '(?=.*' + ')(?=.*'.join(map(re.escape, val.split())) + ')'
rx = QRegularExpression(val, QRegularExpression.PatternOption.CaseInsensitiveOption)
qtutils.ensure_valid(rx)