HOME

TheInfoList



OR:

In
computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes, and development of both hardware and software. Computing has scientific, ...
, incremental search, hot search, incremental find or real-time suggestions is a
user interface In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine fr ...
interaction method to progressively search for and filter through text. As the user types text, one or more possible matches for the text are found and immediately presented to the user. This immediate feedback often allows the user to stop short of typing the entire word or phrase they were looking for. The user may also choose a closely related option from the presented list. The method of incremental search is sometimes distinguished from user interfaces that employ a
modal window In user interface design for computer applications, a modal window is a graphical control element subordinate to an application's main window. A modal window creates a mode that disables the main window but keeps it visible, with the modal window ...
, such as a
dialog box The dialog box (also called dialogue box (non-U.S. English), message box or simply dialog) is a graphical control element in the form of a small window that communicates information to the user and prompts them for a response. Dialog boxes are ...
, to enter searches. For some applications, a separate user interface mode may be used instead of a dialog box.


History

The first documented use of incremental search was in
EMACS Emacs , originally named EMACS (an acronym for "Editor MACroS"), is a family of text editors that are characterized by their extensibility. The manual for the most widely used variant, GNU Emacs, describes it as "the extensible, customizable, s ...
on ITS in the late 1970s. This was one of the many essential Emacs features
Richard Stallman Richard Matthew Stallman (; born March 16, 1953), also known by his initials, rms, is an American free software movement activist and programmer. He campaigns for software to be distributed in such a manner that its users have the freedom to ...
included in his reimplementation,
GNU Emacs GNU Emacs is a free software text editor. It was created by GNU Project founder Richard Stallman, based on the Emacs editor developed for Unix operating systems. GNU Emacs has been a central component of the GNU project and a flagship project o ...
. Other noteworthy programs containing this functionality in the 1980s include bash and
Canon Cat Canon Cat is a task-dedicated desktop computer released by Canon Inc. in 1987 at the price of U.S. $1,495. On the surface, it was not unlike dedicated word processors popular in the late 1970s to early 1980s, but it was far more powerful, and i ...
. These early implementations offered single line feedback, not lists of suggestions. The first mainstream appearance may have been in the Speller for WordPerfect 5.2 for Windows, released 30 November 1992. As programmer Robert John Stevens, now CEO of WriteExpress, watched users at the WordPerfect Usability Lab in Orem, Utah use the 5.1 Speller that he and Steven M. Cannon ported to Windows, he noticed that when a word was not found in the dictionary and no alternative words were presented, users seemed lost, moved the mouse cursor around the page and even exited the Speller. Dumbstruck by the anomaly, he went home, sat on the couch and discussed his observations with his wife. Stevens coded the solution: as a user typed in the edit box, Speller would suggest words beginning with the letters entered. Stevens' Spell Check program was also used in
Novell GroupWise GroupWise is a messaging and collaboration platform from Micro Focus that supports email, calendaring, personal information management, instant messaging, and document management. The GroupWise platform consists of desktop client software, whi ...
.


Variants

This feature, or variations thereof, has also been referred to as
Autocomplete Autocomplete, or word completion, is a feature in which an application predicts the rest of a word a user is typing. In Android and iOS smartphones, this is called predictive text. In graphical user interfaces, users can typically press the tab ...
, search as you type, filter/find as you type (FAYT), incremental search, typeahead search, inline search, instant search, word wheeling, and other names as well. Some common
keyboard shortcut computing, a keyboard shortcut also known as hotkey is a series of one or several keys to quickly invoke a software program or perform a preprogrammed action. This action may be part of the standard functionality of the operating system or ...
s for incremental find are Ctrl/Cmd-F (like for traditional find), the GNU-style / (also applicable to Vim), or
Emacs Emacs , originally named EMACS (an acronym for "Editor MACroS"), is a family of text editors that are characterized by their extensibility. The manual for the most widely used variant, GNU Emacs, describes it as "the extensible, customizable, s ...
-style C-s.


Searches for files and media

This user interface method is also employed in varying contexts. For example, a user may encounter this feature while searching for files whose names match a string in an operating system's file explorer shell. The feature may also be used during searches for songs whose name or artist match a string in a media player.


Searches for user interface elements

Another variation is to filter through long lists of options or menu items that may appear within the user interface itself. Examples of this variation can be found in the about:config interface section of Mozilla Firefox version 2.0.0.14 and later versions; and in the bundle editor section of TextMate 1.5.7. This feature is also employed in application launchers such as Quicksilver 1.0. Typically a list of matches is generated as the search query is typed, and the list is progressively narrowed to match the filter text.


Web search

In September 2010, Google introduced
Google Instant Google Search (also known simply as Google) is a search engine provided by Google. Handling more than 3.5 billion searches per day, it has a 92% share of the global search engine market. It is also the most-visited website in the world. The ...
, an incremental search feature for Google Search.


Resource consumption

Incremental search on a non-local server, as in Web search, uses more network bandwidth and server processing than non-incremental search, due to the handling of
XMLHttpRequest XMLHttpRequest (XHR) is an API in the form of an object whose methods transfer data between a web browser and a web server. The object is provided by the browser's JavaScript environment. Particularly, retrieval of data from XHR for the purpose ...
s (or similar) which are typically fired from each onkeyup event.


Reception

Interface expert
Jef Raskin Jef Raskin (born Jeff Raskin; March 9, 1943 – February 26, 2005) was an American human–computer interface expert best known for conceiving and starting the Macintosh project at Apple in the late 1970s. Early life and education Jef Raskin ...
has been a strong advocate of incremental search. In his 2000 book ''
The Humane Interface ''The Humane Interface: New Directions for Designing Interactive Systems'' () is a book about user interface design written by Jef Raskin and published in 2000. It covers ergonomics, quantification, evaluation, and navigation. Contents The bo ...
'', he wrote, "From the point of view of interface engineering, the advantages of incremental searching are so numerous and the advantages of delimited searches so few that I can see almost no occasions when a delimited search would be preferred." This was followed by a footnote reading, "A search is either incremental or excremental." Incremental search has been criticised for exhibiting low
affordance Affordance is what the environment offers the individual. American psychologist James J. Gibson coined the term in his 1966 book, ''The Senses Considered as Perceptual Systems'', and it occurs in many of his earlier essays. However, his best-kno ...
, as the text fields which provide it offer no visual indication of that fact until after the user begins typing.


Specific applications

Non-modal incremental find is found in: Modern
web browser A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used ...
s: *
Firefox Mozilla Firefox, or simply Firefox, is a free and open-source web browser developed by the Mozilla Foundation and its subsidiary, the Mozilla Corporation. It uses the Gecko rendering engine to display web pages, which implements current and ...
(since version 0.4) *
Opera Opera is a form of theatre in which music is a fundamental component and dramatic roles are taken by singers. Such a "work" (the literal translation of the Italian word "opera") is typically a collaboration between a composer and a libre ...
*
Opera Mini Opera Mini is a mobile web browser made by Opera. It was primarily designed for the Java ME platform, as a low-end sibling for Opera Mobile, but it is now developed exclusively for Android. It was previously developed for iOS, Windows 10 Mobile ...
*
Safari A safari (; ) is an overland journey to observe wild animals, especially in eastern or southern Africa. The so-called "Big Five" game animals of Africa – lion, leopard, rhinoceros, elephant, and Cape buffalo – particularly form an importa ...
* Chrome *
Internet Explorer 8 Windows Internet Explorer 8 (IE8) is a web browser for Windows. It was released by Microsoft on March 19, 2009, as the eighth version of Internet Explorer and the successor to Internet Explorer 7. It was the default browser in Windows 7 (later d ...
*
Konqueror Konqueror is a free and open-source web browser and file manager that provides web access and file-viewer functionality for file systems (such as local files, files on a remote FTP server and files in a disk image). It forms a core part of ...
* Midori
Instant messaging client Instant messaging (IM) technology is a type of online chat allowing real-time text transmission over the Internet or another computer network. Messages are typically transmitted between two or more parties, when each user inputs text and trigg ...
s: *
Adium Adium is a free and open source instant messaging client for macOS that supports multiple IM networks, including Google Talk and XMPP. In the past, it has also supported AIM, ICQ, Windows Live Messenger and Yahoo! Messenger. Adium is written u ...
*
Windows Live Messenger MSN Messenger (also known colloquially simply as "Messenger"), later rebranded as Windows Live Messenger, was a cross-platform instant-messaging client developed by Microsoft. It connected to the Microsoft Messenger service and, in later versi ...
Modern
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also ...
s: *
Apple An apple is an edible fruit produced by an apple tree (''Malus domestica''). Apple trees are cultivated worldwide and are the most widely grown species in the genus ''Malus''. The tree originated in Central Asia, where its wild ancestor ...
's
Mac OS X macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and la ...
: Spotlight (which searches the entire computer) : Help menu ( 10.5 and newer) :
System Preferences System Settings (System Preferences on macOS Monterey and earlier) is an application included with macOS. It allows users to modify various system settings, which are divided into separate Preference Panes. The System Settings application wa ...
*
Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washi ...
's
Windows Vista Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, which was released five years before, at the time being the longest time span between successive releases of ...
and 7 :
Start menu The Start menu is a graphical user interface element used in Microsoft Windows since Windows 95 and in other operating systems. It provides a central launching point for computer programs and performing other tasks in the Windows shell. It is ...
: Control Panel *
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, whic ...
's
KDE 4 KDE Software Compilation 4 (KDE SC 4) was the only series of the so-called KDE Software Compilation (short: KDE SC), first released in January 2008 and the last release being 4.14.3 released in November 2014. It was the follow-up to K Desktop En ...
desktop environment uses this systematically : KWrite :
Rekonq rekonq was a lightweight, QtWebKit-based web browser developed inside the free software project KDE. It is the default web browser of Chakra GNU/Linux, and was formerly of Kubuntu (between versions 10.10 and 13.10). rekonq has been official ...
*
BlackBerry OS BlackBerry OS is a discontinued proprietary mobile operating system developed by Canadian company BlackBerry Limited for its BlackBerry line of smartphone handheld devices. The operating system provides multitasking and supports specialized i ...
(version 6.0.0 and newer) Editors and development environments: *
Eclipse An eclipse is an astronomical event that occurs when an astronomical object or spacecraft is temporarily obscured, by passing into the shadow of another body or by having another body pass between it and the viewer. This alignment of three ce ...
*
Emacs Emacs , originally named EMACS (an acronym for "Editor MACroS"), is a family of text editors that are characterized by their extensibility. The manual for the most widely used variant, GNU Emacs, describes it as "the extensible, customizable, s ...
*
IntelliJ IDEA IntelliJ IDEA is an integrated development environment (IDE) written in Java for developing computer software written in Java, Kotlin, Groovy, and other JVM-based languages. It is developed by JetBrains (formerly known as IntelliJ) and is a ...
* NetBeans IDE * Vim *
Visual Studio Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms suc ...
Other applications: *
Apple An apple is an edible fruit produced by an apple tree (''Malus domestica''). Apple trees are cultivated worldwide and are the most widely grown species in the genus ''Malus''. The tree originated in Central Asia, where its wild ancestor ...
's
iTunes iTunes () is a software program that acts as a media player, media library, mobile device management utility, and the client app for the iTunes Store. Developed by Apple Inc., it is used to purchase, play, download, and organize digital mu ...
* Google Toolbar 5 *
less Less or LESS may refer to: fewer than,: not as much. Computing * less (Unix) less is a terminal pager program on Unix, Windows, and Unix-like systems used to view (but not change) the contents of a text file one screen at a time. It is simila ...
*
Windows Media Player Windows Media Player (WMP) is the first media player (application software), media player and media library application that was developed by Microsoft for playing sound reproduction, audio, video and viewing images on personal computers runnin ...
* Quicksilver *
Blender A blender (sometimes called a mixer or liquidiser in British English) is a kitchen and laboratory appliance used to mix, crush, purée or emulsify food and other substances. A stationary blender consists of a blender container with a rotating ...
's search menu (version 2.5 and newer) * Clara.io's explorer search menu


See also

* Autofill *
Autocomplete Autocomplete, or word completion, is a feature in which an application predicts the rest of a word a user is typing. In Android and iOS smartphones, this is called predictive text. In graphical user interfaces, users can typically press the tab ...
*
Context-sensitive user interface A context-sensitive user interface offers the user options based on the state of the active program. Context sensitivity is ubiquitous in current graphical user interfaces, often in context menus. A user-interface may also provide context sensitiv ...
* Combo box *
Search suggest drop-down list A search suggest drop-down list is a query feature used in computing to show the searcher shortcuts, while the query is typed into a text box. Before the query is complete, a drop-down list with the suggested completions appears to provide opt ...
*
Snippet (programming) Snippet is a programming term for a small region of re-usable source code, machine code, or text. Ordinarily, these are formally defined operative units to incorporate into larger programming modules. Snippet management is a feature of some tex ...


References


External links


Keyboard Feature: Find As You Type
— Mozilla.

— Emacs.

— Eclipse.
Find As You Type Add-on
— Internet Explorer
Inline Search Add-on
— Internet Explorer
Tip #13 - Incremental search
— Vim {{DEFAULTSORT:Incremental Search User interface techniques Search engine software