fix: extract AI comment content without prefix in file watcher

This commit is contained in:
Paul Gauthier 2024-10-25 16:10:48 -07:00 committed by Paul Gauthier (aider)
parent ec00bb988c
commit 2e5981ecb3
2 changed files with 5 additions and 2 deletions

View file

@ -376,6 +376,9 @@ class InputOutput:
root, stop_event=stop_event, gitignores=gitignore, encoding=self.encoding root, stop_event=stop_event, gitignores=gitignore, encoding=self.encoding
): ):
if changed: if changed:
self.changed_files = changed
#ai move all this ...
dump(changed) dump(changed)
# Check if any values contain ! # Check if any values contain !
if any( if any(
@ -461,6 +464,7 @@ class InputOutput:
# Check if we were interrupted by a file change # Check if we were interrupted by a file change
if self.changed_files: if self.changed_files:
#ai ...down to here!
changed = " ".join(self.changed_files) changed = " ".join(self.changed_files)
self.changed_files = None self.changed_files = None

View file

@ -135,7 +135,6 @@ def watch_source_files(
result[file] = comments result[file] = comments
yield result yield result
def get_ai_comment(filepath, encoding="utf-8"): def get_ai_comment(filepath, encoding="utf-8"):
"""Extract all AI comments from a file""" """Extract all AI comments from a file"""
comments = [] comments = []
@ -143,7 +142,7 @@ def get_ai_comment(filepath, encoding="utf-8"):
with open(filepath, encoding=encoding, errors="ignore") as f: with open(filepath, encoding=encoding, errors="ignore") as f:
for line in f: for line in f:
if match := re.search(r"(?:#|//) *ai\b(.*)", line, re.IGNORECASE): if match := re.search(r"(?:#|//) *ai\b(.*)", line, re.IGNORECASE):
comment = match.group(0).strip() comment = match.group(1).strip()
if comment: if comment:
comments.append(comment) comments.append(comment)
except (IOError, UnicodeDecodeError): except (IOError, UnicodeDecodeError):