Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Incremental search
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|User interface method to search for text}} {{For|the class of search techniques in artificial intelligence and robotics|Incremental heuristic search}} [[File:Firefox FAYT.png|thumb|340px|right|Screenshot of performing "Find as you type" in [[Mozilla Firefox]]. "ency" was being typed and the first matched text was highlighted in [[green]].]] In [[computing]], '''incremental search''', also known as '''hot search''', '''incremental find''' or '''real-time suggestions''', is a [[user interface]] 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]], such as a [[dialog box]], to enter searches. For some applications, a separate [[Mode (user interface)|user interface mode]] may be used instead of a dialog box. ==History== {{unreferenced section|date=June 2009}} The first documented use of incremental search was in [[EMACS]] on [[Incompatible Timesharing System|ITS]] in the late 1970s.<ref name="emacs_intro">{{cite web|url=http://www.emacswiki.org/emacs/AnIntroductionToTheEmacsEditor|title=An Introduction to the Emacs Editor|last=Ciccarelli|first=Eugene|date=January 1978 |work=AI Memo No. 447|access-date=2009-06-16}}</ref> This was one of the many essential Emacs features [[Richard Stallman]] included in his reimplementation, [[GNU Emacs]]. Other noteworthy programs containing this functionality in the 1980s include [[GNU bash|bash]] and [[Canon Cat]].<ref name="shapiro">{{cite journal|last=Shapiro|first=Ezra|year=1989|title=The Cat is Dead, Long Live the Interface|journal=Language Technology Magazine|volume=13}}</ref> 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.<ref>{{Cite news |last=Markoff |first=John |date=1992-03-30 |title=Wordperfect Executive Is Forced Out |language=en-US |work=The New York Times |url=https://www.nytimes.com/1992/03/30/business/wordperfect-executive-is-forced-out.html |access-date=2023-11-02 |issn=0362-4331}}</ref> 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. "You can type in the Replace With box any word you want to find. As you type letters into the box, possible matches are displayed."<ref>{{cite book |title=Using WordPerfect 5.2 for Windows |date=January 1, 1993 |publisher=Que Development Group |isbn=9781565291669 |pages=218}}</ref><ref>{{cite book |title=Using Wordperfect 5.2 for Windows | date=1993 | isbn=978-1-56529-166-9 |url=https://books.google.com/books?id=4Tn2-Kif3E8C&q=possible%20matches}}</ref> == Variants == This feature, or variations thereof, has also been referred to as [[Autocomplete]], '''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]]s for incremental find are Ctrl/Cmd-F (like for traditional find), F3, the [[GNU]]-style <kbd>[[slash (punctuation)|/]]</kbd> (also applicable to [[Vim (text editor)|Vim]]<ref> {{cite web |title=Patterns and search commands |url=http://vimdoc.sourceforge.net/htmldoc/pattern.html#search-commands |date=24 April 2006 |publisher=Bram Moolenaar, SourceForge |access-date=1 August 2009}} </ref>), or [[Emacs]]-style <kbd>C-s</kbd>. === 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 (software)|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 [[Instant Search|Google Instant]], 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]]s (or similar) which are typically fired from each [[DOM events|onkeyup event]]. ==Reception== Interface expert [[Jef Raskin]] has been a strong advocate of incremental search. In his 2000 book ''[[The Humane Interface]]'', he wrote, "From the point of view of interface engineering, the advantages of incremental searching are so numerous and the advantages of [[delimited search]]es 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."<ref name="raskin">{{cite book|last=Raskin|first=Jef|title=The Humane Interface|publisher=Addison-Wesley Professional|date=2000-04-08|page=[https://archive.org/details/humaneinterfacen00rask/page/126 126]|isbn=978-0-201-37937-2|url-access=registration|url=https://archive.org/details/humaneinterfacen00rask/page/126}}</ref> Incremental search has been criticised for exhibiting low [[affordance]],<ref>{{cite web|url=http://justaddwater.dk/2007/05/05/affordance-of-autocomplete-text-fields/|title=Affordance of Autocomplete Text Fields|author=Jesper RΓΈnn-Jensen|date=2007-05-05 |website=justaddwater.dk |url-status=live |archive-url=https://web.archive.org/web/20230326021918/http://justaddwater.dk/2007/05/05/affordance-of-autocomplete-text-fields/ |archive-date= Mar 26, 2023 }}</ref> 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]]s: * [[Firefox]] (since version 0.4)<ref>{{cite web|url=http://viewvc.svn.mozilla.org/vc/projects/mozilla.org/trunk/news.html?revision=45074&view=co&pathrev=48036 |title=Press Releases and Announcements |publisher=mozilla.org news |access-date=2014-06-21 |url-status=dead |archive-url= https://archive.today/20130415103923/http://viewvc.svn.mozilla.org/vc/projects/mozilla.org/trunk/news.html?revision=45074&view=co&pathrev=48036 |archive-date= 15 Apr 2013}}</ref> * [[Opera (web browser)|Opera]] * [[Opera mini|Opera Mini]] * [[Safari (web browser)|Safari]] * [[Google Chrome|Chrome]] * [[Internet Explorer 8]] * [[Konqueror]] * [[Midori (browser)|Midori]] [[Instant messaging client]]s: * [[Adium]] * [[Windows Live Messenger]] Modern [[operating system]]s: * [[Apple Inc.|Apple]]'s [[Mac OS X]] : [[Spotlight (software)|Spotlight]] (which searches the entire computer) : Help menu ([[Mac OS X Leopard|10.5]] and newer) : [[System Preferences]] * [[Microsoft]]'s [[Windows Vista]] and [[Windows 7|7]] : [[Start menu]] : [[Control Panel (Windows)|Control Panel]] * [[Linux]]'s [[KDE 4]] desktop environment uses this systematically : [[KWrite]] : Rekonq * [[BlackBerry OS]] (version 6.0.0 and newer) Editors and development environments: * [[Eclipse (software)|Eclipse]] * [[Emacs]] * [[IntelliJ IDEA]] * [[NetBeans|NetBeans IDE]] * [[Sublime Text]] * [[Vim (text editor)|Vim]] * [[Visual Studio]] Other applications: * [[Apple Inc.|Apple]]'s [[iTunes]] * [[Google Toolbar|Google Toolbar 5]] * [[less (Unix)|less]] * [[Windows Media Player]] * [[Quicksilver (software)|Quicksilver]] * [[Blender (software)|Blender]]'s search menu (version 2.5 and newer) * [[Clara.io]]'s explorer search menu ==See also== *[[Autofill]] *[[Autocomplete]] *[[Context-sensitive user interface]] *[[Combo box]] *[[Search suggest drop-down list]] *[[Snippet (programming)]] ==References== {{Reflist}} ==External links== *[https://www.mozilla.org/access/type-ahead/ Keyboard Feature: Find As You Type] β Mozilla. *[https://www.gnu.org/software/emacs/manual/html_node/emacs/Incremental-Search.html Incremental Search] β Emacs. *[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.user/tips/platform_tips.html Using Incremental Find] β Eclipse. *[http://www.ookii.org/software/findasyoutype/ Find As You Type Add-on] β Internet Explorer *[https://web.archive.org/web/20070423072215/http://www.ieforge.com/InlineSearch/HomePage Inline Search Add-on] β Internet Explorer *[http://www.vim.org/tips/tip.php?tip_id=13 Tip #13 - Incremental search] β Vim {{Web browsers}} {{DEFAULTSORT:Incremental Search}} [[Category:User interface techniques]] [[Category:Search engine software]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Ambox
(
edit
)
Template:Cite book
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite news
(
edit
)
Template:Cite web
(
edit
)
Template:For
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Unreferenced
(
edit
)
Template:Unreferenced section
(
edit
)
Template:Web browsers
(
edit
)