Feature request: Type to select a sidebar table
- Dominant language
- Python
- Stars
- 486
- Forks
- 8
- PR merge metrics
- No merged PRs in 30d
Description
In the list of tables, the current implementation jumps to the tables having name equal to the typed key.
This works fine in most cases, however in applications with a lot of tables where users might want to navigate quickly, it might be useful to not just catch a single character, but rather wait for the typing to stop, and to jump to the table matching the string.
In JS world, this is equivalent to behaviour demonstrated here: https://schier.co/blog/2014/12/08/wait-for-user-to-stop-typing-using-javascript.html
An example with the following tables:
- one
- two
- three
- four
- hello
If someone types `th`, wanting to go to the table **three**, Postico would actually jump to `two` and then `hello`, since they match `t` and `h`. The improved behaviour here would be to actually jump to table `three` and intuitively, this might be the expected behaviour.
I am aware this might be nitpicking, and there is a CMD+P shortcut, however that is rather slow compared to quick jumping. I happen to have a muscle memory for this from Finder, VSCode and I catch myself doing this dozens of times daily in Postico.
One more specific scenario is with Django framework for Python. The way its database works is by prefixing table names with app names, which can be quite extensive. So a table for `appname`, would actually have `appname_logs`, and this would save a lot of time in cases like this with large codebases and table counts.
This is (kinda) relevant to #396 and #592.
Contributor guide
No contributing guide indexed for this repository
Research direction
No source file, test, or entry point is named in the issue. Start by locating the sidebar table-list keyboard navigation and its existing single-character matching behavior; done means typing a multi-character prefix selects the matching table after typing pauses without breaking current navigation or CMD+P.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- django, python
- Domain
- database, desktop
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100