Canonical will outfit the next release of its Ubuntu Linux OS with a new type of interface that will allows desktop users to execute functions for any program through a command-line interface or by voice command.
The new interface, called the HUD (Head-Up Display), "will ultimately replace menus in Unity applications," said Canonical founder Mark Shuttleworth, in a blog post announcing the technology. The first version of HUD will be part of the Ubuntu 12.04 Long Term release, due in April.
Unity is the Ubuntu's standard shell, or desktop interface. HUD provides an overlay that sits on top of the desktop. When the translucent HUD console is evoked, the user can type in any number of keywords to find a specific function, bookmark or file. The command line, in effect, acts as a search engine for individual application resources. Using autocomplete, it will speed access time in subsequent uses. Any program that is written to work with the Unity global menu will work with HUD.
HUD came about as a way to address shortcomings of traditional application menus. They can slow down power users in a number of ways, Shuttleworth said. They also require a lot of reading to find one function and they force users to remember arbitrary hotkeys for specific functions. And they can categorize functions into ambiguously defined and confusing top-level menus.
HUD offers a number of advantages over standard menus, Shuttleworth said. It can do fuzzy matching to help users find commands when they don't know the exact words to evoke. A few words that describe the command may be enough to locate that function. HUD will also keep track of the most frequently used commands and offer those more readily.
Last, and perhaps most important, it will be outfitted to work with voice input. "We want to make it easy to talk to any application, and for any application to respond to your voice. The full integration of voice into applications will take some time. We can start by mapping voice onto the existing menu structures of your apps. And it will only get better from there," Shuttleworth wrote.
HUD also works with the Unix native command line, allowing HUD actions to be scripted and included in pipes, the technique of connecting the output from one Unix utility to the input of another.
HUD is not an entirely new idea. Giving the user a command line interface to quickly call up specific functions has already been implemented in a number of applications. Unix text editors like Vim and Emacs have long featured the technology. Mozilla offers a command-line console, called Ubiquity, for the Firefox browser. Apple's Mac OS X has a similar feature where users can autocomplete a command from within a program itself. HUD, however, is advantageous in that it can offer the same basic interface for all the applications on a desktop, minimizing the learning curve for individual applications.
Shuttleworth contrasted HUD with Microsoft's Ribbon interface, first introduced in Microsoft Office, which also tackles the problem of making unwieldy menus easier to navigate for users. While the ribbon made commands easier to spot, it also takes up a lot of space on the screen, which can be a distraction. In contrast, HUD shows "users just what they want, when they want it," Shuttleworth said.