mirror of
https://github.com/Aider-AI/aider.git
synced 2025-05-31 01:35:00 +00:00
feat: Add autocomplete support for /read-only command
This commit is contained in:
parent
d1ee3644ec
commit
97ddcb2ae6
3 changed files with 21 additions and 9 deletions
|
@ -14,6 +14,7 @@
|
|||
- ModelSettings takes `extra_params` dict to specify any extras to pass to `litellm.completion()`.
|
||||
- Renamed `/clipboard` to `/paste`.
|
||||
- New `/copy` command to copy the last LLM response to the clipboard.
|
||||
- Autocomplete for `/read-only` supports the entire filesystem.
|
||||
- Support for litellm's `extra_body` parameter.
|
||||
- Support for cursor shapes when in vim mode.
|
||||
- Numerous bug fixes.
|
||||
|
|
|
@ -789,7 +789,9 @@ class Coder:
|
|||
group = ConfirmGroup(urls)
|
||||
for url in urls:
|
||||
if url not in self.rejected_urls:
|
||||
if self.io.confirm_ask("Add URL to the chat?", subject=url, group=group):
|
||||
if self.io.confirm_ask(
|
||||
"Add URL to the chat?", subject=url, group=group, allow_never=True
|
||||
):
|
||||
inp += "\n\n"
|
||||
inp += self.commands.cmd_web(url)
|
||||
added_urls.append(url)
|
||||
|
@ -1380,7 +1382,7 @@ class Coder:
|
|||
added_fnames = []
|
||||
group = ConfirmGroup(new_mentions)
|
||||
for rel_fname in sorted(new_mentions):
|
||||
if self.io.confirm_ask(f"Add {rel_fname} to the chat?", group=group):
|
||||
if self.io.confirm_ask(f"Add {rel_fname} to the chat?", group=group, allow_never=True):
|
||||
self.add_rel_fname(rel_fname)
|
||||
added_fnames.append(rel_fname)
|
||||
else:
|
||||
|
@ -1957,7 +1959,11 @@ class Coder:
|
|||
)
|
||||
prompt = "Run shell command?" if command_count == 1 else "Run shell commands?"
|
||||
if not self.io.confirm_ask(
|
||||
prompt, subject="\n".join(commands), explicit_yes_required=True, group=group
|
||||
prompt,
|
||||
subject="\n".join(commands),
|
||||
explicit_yes_required=True,
|
||||
group=group,
|
||||
allow_never=True,
|
||||
):
|
||||
return
|
||||
|
||||
|
@ -1976,7 +1982,7 @@ class Coder:
|
|||
accumulated_output += f"Output from {command}\n{output}\n"
|
||||
|
||||
if accumulated_output.strip() and not self.io.confirm_ask(
|
||||
"Add command output to the chat?"
|
||||
"Add command output to the chat?", allow_never=True
|
||||
):
|
||||
accumulated_output = ""
|
||||
|
||||
|
|
15
aider/io.py
15
aider/io.py
|
@ -488,11 +488,15 @@ class InputOutput:
|
|||
):
|
||||
self.num_user_asks += 1
|
||||
|
||||
if question in self.never_prompts:
|
||||
question_id = (question, subject)
|
||||
|
||||
if question_id in self.never_prompts:
|
||||
return False
|
||||
|
||||
if group and not group.show_group:
|
||||
group = None
|
||||
if group:
|
||||
allow_never = True
|
||||
|
||||
valid_responses = ["yes", "no"]
|
||||
options = " (Y)es/(N)o"
|
||||
|
@ -503,8 +507,9 @@ class InputOutput:
|
|||
options += "/(S)kip all"
|
||||
valid_responses.append("skip")
|
||||
if allow_never:
|
||||
options += "/(X)Never"
|
||||
valid_responses.append("never")
|
||||
options += "/(D)on't ask again"
|
||||
valid_responses.append("don't")
|
||||
|
||||
question += options + " [Yes]: "
|
||||
|
||||
if subject:
|
||||
|
@ -555,8 +560,8 @@ class InputOutput:
|
|||
|
||||
res = res.lower()[0]
|
||||
|
||||
if res == "x" and allow_never:
|
||||
self.never_prompts.add(question)
|
||||
if res == "d" and allow_never:
|
||||
self.never_prompts.add(question_id)
|
||||
hist = f"{question.strip()} {res}"
|
||||
self.append_chat_history(hist, linebreak=True, blockquote=True)
|
||||
return False
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue