Progress bar monitoring updates. Hopefully fixed some false positives, and updated claude-code progress monitoring.
This commit is contained in:
		| @@ -146,8 +146,8 @@ class command: | ||||
|  | ||||
|         # Pattern 1b: Time/token activity (not percentage-based, so use single | ||||
|         # beep) | ||||
|         time_match = re.search(r"(\d+)s\s", text) | ||||
|         token_match = re.search(r"(\d+)\s+tokens", text) | ||||
|         time_match = re.search(r"(?:(?:remaining|elapsed|left|ETA|eta)[:;\s]*(\d+)s|(\d+)s\s+(?:remaining|elapsed|left))", text, re.IGNORECASE) | ||||
|         token_match = re.search(r"(?:processing|generating|used|consumed)\s+(\d+)\s+tokens", text, re.IGNORECASE) | ||||
|         # Pattern 1c: dd command output (bytes copied with transfer rate) | ||||
|         dd_match = re.search(r"\d+\s+bytes.*copied.*\d+\s+s.*[kMGT]?B/s", text) | ||||
|         # Pattern 1d: Curl-style transfer data (bytes, speed indicators) | ||||
| @@ -183,7 +183,10 @@ class command: | ||||
|         if fraction_match: | ||||
|             current = int(fraction_match.group(1)) | ||||
|             total = int(fraction_match.group(2)) | ||||
|             if total > 0: | ||||
|             # Filter out dates, page numbers, and other non-progress fractions | ||||
|             if (total > 0 and total <= 1000 and current <= total and  | ||||
|                 not re.search(r"\b(?:page|chapter|section|line|row|column|year|month|day)\b", text, re.IGNORECASE) and | ||||
|                 not re.search(r"\d{1,2}/\d{1,2}/\d{2,4}", text)):  # Date pattern | ||||
|                 percentage = (current / total) * 100 | ||||
|                 if ( | ||||
|                     percentage | ||||
| @@ -245,7 +248,15 @@ class command: | ||||
|                 self.env["commandBuffer"]["lastProgressTime"] = current_time | ||||
|             return | ||||
|  | ||||
|         # Pattern 6: Moon phase progress indicators | ||||
|         # Pattern 6: Claude Code progress indicators | ||||
|         claude_progress_match = re.search(r'^[·✶✢*]\s+\w+[…\.]*\s*\(esc to interrupt\)\s*$', text) | ||||
|         if claude_progress_match: | ||||
|             if current_time - self.env["commandBuffer"]["lastProgressTime"] >= 1.0: | ||||
|                 self.play_activity_beep() | ||||
|                 self.env["commandBuffer"]["lastProgressTime"] = current_time | ||||
|             return | ||||
|  | ||||
|         # Pattern 7: Moon phase progress indicators | ||||
|         moon_match = re.search(r'[🌑🌒🌓🌔🌕🌖🌗🌘]', text) | ||||
|         if moon_match: | ||||
|             moon_phases = { | ||||
|   | ||||
| @@ -4,6 +4,6 @@ | ||||
| # Fenrir TTY screen reader | ||||
| # By Chrys, Storm Dragon, and contributors. | ||||
|  | ||||
| version = "2025.08.04" | ||||
| version = "2025.08.20" | ||||
| codeName = "testing" | ||||
| code_name = "testing" | ||||
|   | ||||
		Reference in New Issue
	
	Block a user