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.
In web forms Autocompletion or "autofill" is frequently found in web browsers, used to fill in
web forms automatically. When a user inputs data into a form and subsequently submits it, the web browser will often save the form's contents by default. This feature is commonly used to fill in login credentials. However, when a password field is detected, the web browser will typically ask the user for explicit confirmation before saving the password in its password store, often secured with a built-in
password manager to allow the use of a "master password" before credentials can be autofilled. Most of the time, such as in Internet Explorer and
Google Toolbar, the entries depend on the form field's name, so as to not enter street names in a last name field or vice versa. For this use, proposed names for such form fields, in earlier HTML 5 specifications this RFC is no longer referenced, thus leaving the selection of names up to each browser's implementation. Certain web browsers such as
Opera automatically autofill
credit card information and
addresses. An individual webpage may enable or disable browser autofill by default. This is done in
HTML with the autocomplete attribute in a <form> element or its corresponding form elements. It has been shown that the autofill feature of modern browsers can be exploited in a
phishing attack with the use of hidden form fields, which allows
personal information such as the user's phone number to be collected. HTML has a element that can be used to feed an input element with autocompletions. Choose a flavor:
In e-mail programs In
e-mail programs autocomplete is typically used to fill in the e-mail addresses of the intended recipients. Generally, there are a small number of frequently-used e-mail addresses, hence it is relatively easy to use autocomplete to select among them. Like web addresses, e-mail addresses are often long, making typing them completely 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.
In retail and e-commerce websites Autocomplete, often called predictive search, is used to suggest relevant products, categories, or queries as a shopper types into the search bar. This feature helps reduce typing effort and guides users toward popular or high-converting search terms. Many e-commerce systems generate these suggestions dynamically, based on recent search data or trending products, to improve both speed and discoverability.
In search engines In search engines, autocomplete user interface features provide users with suggested queries or results as they type their query in the search box. This is also commonly called
autosuggest or
incremental search. This type of search often relies on matching algorithms that forgive entry errors such as phonetic
Soundex algorithms or the language independent
Levenshtein algorithm. The challenge remains to search large indices or popular query lists in under a few milliseconds so that the user sees results pop up while typing. Autocomplete can have an adverse effect on individuals and businesses when negative search terms are suggested when a search takes place. Autocomplete has now become a part of
reputation management as companies linked to negative search terms such as scam, complaints and fraud seek to alter the results. Google in particular have listed some of the aspects that affect how their algorithm works, but this is an area that is open to manipulation.
In source code editors 5.0: The programmer types some code, and when the software detects a recognizable string such as a variable identifier or class name it presents a menu to the programmer which contains the complete name of the identified variable or the methods applicable to the detected class, and the programmer makes a choice with her or his mouse or with the keyboard arrow keys. If the programmer continues typing without making a choice, then the menu disappears. Autocompletion 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 language. There are usually only a limited number of words meaningful in the current context or
namespace, such as names of variables and functions. An example of code completion is
Microsoft's
IntelliSense design. It involves showing a pop-up list of possible completions for the current 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 then serves 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 programmer to use longer, more descriptive variable names, hence making the
source code more readable. Typing large words which may contain
camel case like numberOfWordsPerParagraph can be difficult, but autocomplete allows a programmer to complete typing the word using a fraction of the keystrokes.
In database query tools Autocompletion in
database query tools allows the user to autocomplete the table names in an
SQL statement and column names of the tables referenced in the SQL statement. As text is typed into 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.
SQL Server Management Studio provides autocomplete in query tools.
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
Apache OpenOffice,
Calligra Suite,
KOffice,
LibreOffice and
Microsoft Office include support for this kind of autocompletion, as do advanced text editors such as
Emacs and
Vim. •
Apache OpenOffice Writer and
LibreOffice Writer have a working word completion program that proposes words previously typed in the text, rather than from the whole dictionary •
Microsoft Excel spreadsheet application has a working word completion program that proposes words previously typed in upper cells
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 the Tab key| 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, the user would type more letters or press the Tab key repeatedly to select the appropriate text. == Efficiency ==