fix /read completions

This commit is contained in:
Paul Gauthier 2024-08-27 16:38:25 -07:00
parent 530dae2a98
commit a3554ffbbc
3 changed files with 6 additions and 2 deletions

View file

@ -151,6 +151,7 @@ class Commands:
assert cmd.startswith("/")
cmd = cmd[1:]
cmd = cmd.replace("-", "_")
fun = getattr(self, f"completions_{cmd}", None)
if not fun:
return
@ -510,7 +511,7 @@ class Commands:
fname = f'"{fname}"'
return fname
def completions_read(self):
def completions_read_only(self):
return self.completions_add()
def completions_add(self):

View file

@ -105,8 +105,10 @@ class AutoCompleter(Completer):
cmd = words[0]
partial = words[-1].lower()
if cmd not in self.command_names:
matches, _, _ = self.commands.matching_commands(cmd)
if len(matches) != 1:
return
cmd = matches[0]
if cmd not in self.command_completions:
candidates = self.commands.get_completions(cmd)

View file

@ -34,6 +34,7 @@ class TestInputOutput(unittest.TestCase):
Path(fname).write_text("def hello(): pass\n")
autocompleter = AutoCompleter(root, rel_fnames, addable_rel_fnames, commands, "utf-8")
autocompleter.tokenize()
dump(autocompleter.words)
self.assertEqual(autocompleter.words, set(rel_fnames + [("hello", "`hello`")]))