- commit
- 94749edd6bd5c994ac650edc71676004b3385779
- parent
- 2d2fee5265b9dd4fa90701cfc722164fff9dcb01
- Author
- Tobias Bengfort <tobias.bengfort@posteo.de>
- Date
- 2020-09-03 16:55
multi-substring matching
Diffstat
| M | cplay.py | 8 | ++++++-- |
1 files changed, 6 insertions, 2 deletions
diff --git a/cplay.py b/cplay.py
@@ -68,6 +68,10 @@ def format_time(total): 68 68 return '%02d:%02d:%02d' % (h, m, s) 69 69 70 70 -1 71 def str_match(query, s): -1 72 return all(q in s.lower() for q in query.lower().split()) -1 73 -1 74 71 75 def set_volume(vol): 72 76 subprocess.check_call([ 73 77 'pactl', '--', 'set-sink-volume', '0', '%i%%' % int(vol * 100) @@ -239,7 +243,7 @@ class List: 239 243 def search(self, q, diff=1, offset=0): 240 244 for i in range(len(self.items)): 241 245 pos = (self.cursor + (i + offset) * diff) % len(self.items)242 -1 if q.lower() in self.format_item(self.items[pos]).lower():-1 246 if str_match(q, self.format_item(self.items[pos])): 243 247 self.set_cursor(pos) 244 248 return True 245 249 return False @@ -338,7 +342,7 @@ class Filelist(List): 338 342 if query: 339 343 self.items = [] 340 344 for path in self.all_items:341 -1 if query.lowwer() in self.format_item(path).lower():-1 345 if str_match(query, self.format_item(path)): 342 346 self.items.append(path) 343 347 else: 344 348 self.items = self.all_items