diff --git a/qutebrowser/completion/models/sortfilter.py b/qutebrowser/completion/models/sortfilter.py index b1c836ce2..3df787539 100644 --- a/qutebrowser/completion/models/sortfilter.py +++ b/qutebrowser/completion/models/sortfilter.py @@ -68,8 +68,9 @@ class CompletionFilterModel(QSortFilterProxyModel): """ with debug.log_time(log.completion, 'Setting filter pattern'): self.pattern = val + val = re.sub(r' +', r' ', val) # See #1919 val = re.escape(val) - val = re.sub(r'\ +', r'.*', val) + val = val.replace(r'\ ', '.*') self.pattern_re = re.compile(val, re.IGNORECASE) self.invalidate() sortcol = 0 diff --git a/tests/unit/completion/test_sortfilter.py b/tests/unit/completion/test_sortfilter.py index 68642a71b..cef394226 100644 --- a/tests/unit/completion/test_sortfilter.py +++ b/tests/unit/completion/test_sortfilter.py @@ -64,6 +64,8 @@ def _extract_model_data(model): ('foo', 'barfoobar', True), ('foo bar', 'barfoobar', True), ('foo bar', 'barfoobar', True), + ('foo bar', 'barfoobazbar', True), + ('foo bar', 'barfoobazbar', True), ('foo', 'barFOObar', True), ('Foo', 'barfOObar', True), ('ab', 'aonebtwo', False),