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
|
# Pattern 1b: Time/token activity (not percentage-based, so use single
|
||||||
# beep)
|
# beep)
|
||||||
time_match = re.search(r"(\d+)s\s", 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"(\d+)\s+tokens", text)
|
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)
|
# 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)
|
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)
|
# Pattern 1d: Curl-style transfer data (bytes, speed indicators)
|
||||||
@@ -183,7 +183,10 @@ class command:
|
|||||||
if fraction_match:
|
if fraction_match:
|
||||||
current = int(fraction_match.group(1))
|
current = int(fraction_match.group(1))
|
||||||
total = int(fraction_match.group(2))
|
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
|
percentage = (current / total) * 100
|
||||||
if (
|
if (
|
||||||
percentage
|
percentage
|
||||||
@@ -245,7 +248,15 @@ class command:
|
|||||||
self.env["commandBuffer"]["lastProgressTime"] = current_time
|
self.env["commandBuffer"]["lastProgressTime"] = current_time
|
||||||
return
|
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)
|
moon_match = re.search(r'[🌑🌒🌓🌔🌕🌖🌗🌘]', text)
|
||||||
if moon_match:
|
if moon_match:
|
||||||
moon_phases = {
|
moon_phases = {
|
||||||
|
@@ -4,6 +4,6 @@
|
|||||||
# Fenrir TTY screen reader
|
# Fenrir TTY screen reader
|
||||||
# By Chrys, Storm Dragon, and contributors.
|
# By Chrys, Storm Dragon, and contributors.
|
||||||
|
|
||||||
version = "2025.08.04"
|
version = "2025.08.20"
|
||||||
codeName = "testing"
|
codeName = "testing"
|
||||||
code_name = "testing"
|
code_name = "testing"
|
||||||
|
Reference in New Issue
Block a user