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

Use fuzzy search instead of whatever "keepasxc-cli locate" does #5

Open
pbkhrv opened this issue Oct 2, 2019 · 2 comments
Open

Use fuzzy search instead of whatever "keepasxc-cli locate" does #5

pbkhrv opened this issue Oct 2, 2019 · 2 comments
Labels
enhancement New feature or request

Comments

@pbkhrv
Copy link
Owner

pbkhrv commented Oct 2, 2019

Doing our own searching of entry names requires having fast access to the full list of entries stored in a particular database. How?

  • Option 1: run "keepassxc-cli ls" every time, parse the output, run regex on it
  • Option 2: run "keepassxc-cli ls" periodically, maintain the entry list in memory and search through that instead

The Plan:

  • Implement and test option 1 for speed and responsiveness
  • IF option 1 proves to be too slow, implement option 2

Option 2 implementation:

  • Run "ls" when database is unlocked
  • Run "ls" whenever database file changes - launch a separate monitor thread when extension starts up and use pyinotify to watch the database file for changes
  • Compile a regex based on query, then call .search on it: "gith wor" -> r"gith.*?wor"
@pbkhrv pbkhrv added the enhancement New feature or request label Oct 2, 2019
@pbkhrv
Copy link
Owner Author

pbkhrv commented Oct 4, 2019

Use https://github.com/seatgeek/fuzzywuzzy ? (idea from ulauncher-bookmarks extension)

@pbkhrv
Copy link
Owner Author

pbkhrv commented Oct 16, 2019

just noticed that ulauncher comes with some fuzzy search thing - look into that

@pbkhrv pbkhrv pinned this issue Oct 21, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant