Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

filename autocompleter: "cnf" matches CreateNewFile.java and create-new-file.py #1908

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

sannysanoff
Copy link

@sannysanoff sannysanoff commented Oct 3, 2024

i enhanced def get_completions in io.py

When working with Java, for example, it's common to type capital letters of name (CNF will match CreateNewFile.java) in filename auto-completion.

I added same in aider, however it handles also snake_case or dashed-names, and also works with all-lowercase inputs, so these matches will work:

cnf == CreateNewFile, create-new-file, createNewFile, create_new_file
CreNF == CreateNewFile, create-new-file, createNewFile, create_new_file
creNF == CreateNewFile, create-new-file, createNewFile, create_new_file

This is only leaf filename completion. This is used in JetBrains products and thus lives in the fingers of multiple programmers.

@jbellis
Copy link
Contributor

jbellis commented Oct 9, 2024

is there a performance impact of doing an extra 5x or so checks during autocomplete?

style note: I'd recommend "matches" over "test" for the method name

@CLAassistant
Copy link

CLAassistant commented Oct 11, 2024

CLA assistant check
All committers have signed the CLA.

@sannysanoff
Copy link
Author

using the git repo with 2500 java files, I did not notice any slowdown on key repeat rate = 60 repeats / sec, it kept working and filtering fine.

renamed method to 'matches'

@alexanderkjeldaas
Copy link

#270 is an old PR with similar intentions. I think it would be great to have a bit more smarts in the auto-completer 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants