Autocomplete
From Wikipedia, the free encyclopedia
Autocomplete is a feature provided by many source code text editors, word processors, and web browsers. Autocomplete involves the program predicting a word or phrase that the user wants to type in without the user actually typing it in completely. This feature is effective when it is easy to predict the word being typed based on those already typed, such as when there are a limited number of possible or commonly used words (as is the case with email programs, web browsers, or command line interpreters, or when editing text written in a highly-structured, easy-to-predict language, such as in source code editors). Autocomplete speeds up human-computer interactions in environments to which it is well suited.
Contents |
[edit] In web browsers
In web browsers, autocomplete is done in the address bar (using items from the browser's history) and in text boxes on frequently used pages, such as a search engine's search box. Autocomplete for web addresses is particularly convenient because the full addresses are often long and difficult to type correctly.
[edit] In email programs
In email programs autocomplete is typically used to fill in the email addresses of the intended recipients. Generally, there are a small number of frequently used email addresses, hence it is relatively easy to use autocomplete to select between them. Like web addresses, email addresses are often long, hence typing them completely is inconvenient.
For instance,
- Microsoft Outlook Express will find addresses based on the name that is used in the address book. Google's Gmail will find addresses by any string that occurs in the address or stored name.
- BBDB[1] runs in emacs.
[edit] In source code editors
Autocomplete of source code is also known as "code completion". In a source code editor autocomplete is greatly simplified by the regular structure of the programming languages. There are usually only a limited number of words meaningful in the current context or namespace, such as names of variables and functions. Autocomplete naturally comes in very handy. A particularly well-known and useful kind of autocomplete in source code editors is based on Microsoft's IntelliSense design. It involves showing a pop-up list of possible completions for the currently input prefix to allow the user to choose the right one. This is particularly useful in object-oriented programming because often the programmer will not know exactly what members a particular class has. Therefore, autocomplete and IntelliSense then serve as a form of convenient documentation as well as an input method. Another beneficial feature of autocomplete for source code is that it encourages the programmers to use longer, more descriptive variable names incorporating both lower and upper case letters, hence making the source code more readable. Typing large words with many mixed cases like "numberOfWordsPerParagraph" can be difficult, but Autocomplete allows you to complete it without much extra effort.[citation needed]
[edit] In query tools
Auto completion in Query tools allows you to auto complete the table names in an SQL statement and column names of the tables referenced in the SQL statement. As you type in the editor, the context of the cursor within the SQL statement provides an indication of whether the user needs a table completion or a table column completion. The table completion provides a list of tables available in the database server the user is connected to. The column completion provides a list of columns for only tables referenced in the SQL statement. Aqua Data Studio is one such application that provides autocomplete in query tools.
[edit] In word processors
In many word processing programs autocompletion decreases the amount of time spent typing repetitive words and phrases. The source material for autocompletion is either gathered from the rest of the current document or from a list of common words defined by the user. Currently OpenOffice.org, StarOffice, Microsoft Office, and KOffice include support for this kind of autocompletion, as do advanced text editors such as Emacs and Vim.
[edit] In command line interpreters
In a command line interpreter, such as Unix's sh or bash or Windows's cmd.exe or PowerShell, or in similar command line interfaces autocomplete of command names and file names may be accomplished by keeping track of all the possible names of things the user may access. Here autocomplete is usually done by pressing Tab key after typing the first several letters of the word. For example, if the only file in the current directory that starts with x is xLongFileName, the user may prefer to type x and autocomplete to the complete name. If there were another file name or command starting with x in the same scope, usually the user would have to type some more letters or press the Tab key repeatedly to disambiguate what he or she means to the computer.
[edit] Stand-Alone tools
This article or section is written like an advertisement. Please help rewrite this article from a neutral point of view. Mark blatant advertising which would require a fundamental rewrite in order to become encyclopedic for speedy deletion, using {{db-spam}}. (February 2008) |
PhraseExpress is a system-wide predictive text Windows software solution which recognizes the input of repetitive text and suggests to auto-complete such phrases. The word dictionary is built-up by the user input and statistic algorithms determine which and when suggestions are made. Multiple suggestions can be selected from a popup menu.
[edit] Similar tools
Autoreplace is a somewhat related feature that involves automatic replacement of a particular string with another one, usually one that is longer and harder to type, as "myname" with "Lee John Nikolai François Al Rahman". This can also quietly fix simple typing errors, such as turning "teh" into "the".
[edit] Notes
- ^ The Insidious Big Brother Database. Retrieved on 2008-02-23.
[edit] External links
- A brief discussion on the history of code completion
- Live Search Explained -- Examples and explanations of working web examples plus a discussion of the usability benefits compared to traditional search
- Suggest Trees A data structure for rank-sensitive autocompletion.
- A PhD thesis discussing efficient index structures for advanced autocompletion
[edit] Implementations
- PredictAd's hosted Autocomplete service offers contextual advertising and live search during search queries
- Google's Suggest tool employs an autocomplete mechanism
- Firefox extension CustomizeGoogle adds Google Suggest functionality to the normal Google search
- WICK is an open-source framework that will autocomplete from a data array. Has been tested with up to 5,000 entries
- CreateWebApp.com's commercial Ajax Autocomplete widget
- LuMriX hints existent Wikipedia's articles in real time while typing entries.
- FastAutoComplete FastAutoComplete.com commercial AJAX Autocomplete widget for large dictionaries
- CompleteSearch Full-text search with autocompletion, very fast and tested with up to 25 million documents.
- Adding an autocomplete functionality to any windows application