unity-design team mailing list archive
-
unity-design team
-
Mailing list archive
-
Message #08294
HUD: tab completion is a must-have
I've spent a little time on the HUD, trying to find things to improve.
I've found a few. In this mail I'll pretend my previous suggestion "HUD:
reduce clutter by removing repeated information" has been implemented.
As in the previous email, I'll use text in a square bracket to symbolize
the HUD input field.
I'll pretend I enter a search phrase and show what happens. I really
wish I could illustrate in a better way, but this will have to do for
now. I have a summary at the end, so feel free to skip ahead.
Consider an IDE. You have a projects menu which lists your projects by
name. All the projects submenus are identical:
Projects:
- MyProjects Name
- - Run
- - Design GUI
- - Edit code
- - Package
- - Commit
- - Test tools
- - - Edit tests
- - - Run tests
- - - Test history
- - ...
- Second Projects name
- ...
Current situation:
[run tests]
Projects > My new HUD Demo > Test tools > Run tests
Projects > Old school GUI project > Test tools > Run tests
Projects > My guitar effects studio > Test tools > Run tests
Projects > Quickly Test project > Test tools > Run tests
...
You'll then have to use arrow keys to select the right project. It's
quite nice, but it would be very useful if tab completion was added, for
instance to display a submenu:
STEP 0 (enter 'pr' and press tab. It expands the search and shows all
the projects in that menu, ordered by use frequency. Selecting one of
the items would expand your search phrase)
[pr<TAB>]
Projects
Quickly Test project
Old school GUI project
My guitar effects studio
My new HUD Demo
STEP 1 (The search field was updated when I pressed tab. Found two
projects matching "my". Displaying the four most common actions for the
most used project, but not for the others.)
[Projects my<TAB>]
Projects > My new HUD Demo
Edit code
Run tests
Design GUI
Run
Projects > My guitar effects studio
Projects > My discarded project
STEP 2 (expanding the search and pressing tab to complete the projects
name. Displaying the four most common actions for this project.)
[Projects My g<TAB>]
Projects > My guitar effects studio
Run
Design GUI
Package
Commit
STEP 3 (Expanding search to find a specific submenu.)
[My guitar effects studio te<TAB>]
Projects > My guitar effects studio > Test tools
Edit tests
Run tests
Test history
SUMMARY:
This was a lot of text, and I hope you got the point. If I wanted to run
the tests for My guitar effects studio, I would use this phrase: "pr\t
my g\t te\t ru\t", which would expand to "Projects > My guitar effects
studio > Test tools > Run tests". This might seem more complicated than
simply entering "test history" and using the arrow keys to get to the
right project. And it would be.
However, by using tab completion, you're limiting the search
dramatically. When I use "pr\t", only the top-level menus are searched
to find Projects, so that should be lightning fast. Then, when I enter
"my g\t", only the Projects menu is searched, and so on. This should
improve the speed dramatically and therefore also the user experience.
It's worth keeping in mind that tab completion wouldn't change anything
for people who doesn't use it anyway. It would still be possible to
search for "test history" and navigate by arrow keys, but the search
itself would be much slower.
Thoughts?
--
Jo-Erlend Schinstad
Follow ups