Command line completion

Article on other languages:

del.icio.us del.icio.us
Digg Digg
Furl Furl
Reddit Reddit
Rojo Rojo
Add to OnlyWire

Command line completion is a common feature of command line interpreters, in which the program automatically fills in partially typed tokens. Depending on the specific interpreter and its configuration, these elements may include commands, arguments, environment variable names and other entities. Command line completion generally only works in interactive mode.[1] Command line completion is often invoked, by default, by pressing the tab key and frequently called tab completion even when bound to a different key or key combination.

Contents

History

Tab completion showed up early in computing history; one of the first examples appeared in the Berkeley Timesharing System for the SDS 940, where if a typed string were ambiguous, the interpreter would do nothing, but if the string was not ambiguous, it would automatically complete it without any command from the user. This feature did not work well with the all too frequent typos, and so was a mixed blessing. This feature was imitated by Tenex's developers who made an important change: Tenex used "escape recognition", in which the interpreter would not attempt to autocomplete unless the escape key was struck (thus the name) by the user. The domain was also expanded from only program names on the Berkeley system to both program names and files on Tenex.[2] From there it was borrowed by Unix.

Completion in different command line interfaces

  • Unix shells, including bash (the default shell in Linux and Mac OS X) and ksh among many others, have a long-standing tradition of advanced and customizable completion capabilities (see the external links section below for some examples).
    • For Korn shell users, file name completion depends on the value of the EDITOR variable. If EDITOR is set to vi, you type part of name, and then click Escape followed by a backslash (\) character. If EDITOR is set to emacs, you type part of the name, and then click the Escape key twice to complete the file name.
  • Windows PowerShell, the new extensible command shell from Microsoft, which is based on object-oriented programming and the Microsoft .NET framework provides powerful and customizable completion capabilities similar to those of traditional Unix shells.[3][4][citation needed]
  • The cmd.exe command processor of Windows NT-based systems supports basic completion. It is possible to use a separate key-binding for matching directory names only.
  • The MS-DOS command processor COMMAND.COM did not have command line completion: pressing the tab key would just advance the cursor. Before the release of Windows however various enhanced shells for MS-DOS, such as 4DOS, or the FreeDOS version of command.com, would feature Unix-style tab completion.

See also

References

  1. ^ That is, it cannot be invoked to complete partially typed commands in scripts or batch files, even if the completion is unambiguous.
  2. ^ Origins and Development of TOPS-20
  3. ^ The PowerShell Guy : PowerTab Flash Examples Test
  4. ^ The PowerShell Guy : PowerTab

External links

Unix shells

Windows command interpreters

(Be sure to check the "Applies to" section in each article)

This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.


Giant Panda

Mercedes Car
James Bond Guide
This site monitored by SitePinger.net