Product Code Database
Example Keywords: gps -take $82-149
   » » Wiki: Text Editor
Tag Wiki 'Text Editor'.

A text editor is a type of used for editing plain . Such programs are sometimes known as " notepad" software, following the Microsoft Notepad.
(2018). 9781111796099, Cengage Learning. .
(2018). 9780672322891, Sams Publishing. .
(2018). 9780070473546, Tata McGraw-Hill Education. .

Text editors are provided with and software development packages, and can be used to change configuration files, documentation files and programming language .

Plain text files vs. word processor files
There are important differences between files created by a text editor and files created by such as or .

  • A plain text file uses a character encoding such as UTF-8 or to represent numbers, letters, and symbols. The only non-printing characters in the file that can be used to format the text are newline, tab, and . Plain text files are often displayed using a so horizontal alignment and columnar formatting is sometimes done using space characters.
  • Word processor documents are generally stored in a to allow for localization and , such as boldface, italics and multiple , and to be structured into columns and tables.
  • Although they are often viewed with formatting, documents using are stored in plain text files that contain a combination of human-readable text and markup tags. For example, web pages are plain text with tags to achieve formatting when rendered by a . Many web pages also contain embedded that is interpreted by the browser.

Word processors were developed to allow formatting of text for presentation on a printed page, while text produced by text editors is generally used for other purposes, such as input data for a computer program.

When both formats are available, the user must select with care. Saving a plain text file in a word-processor format adds formatting information that can make the text unreadable by a program that expects plain text. Conversely, saving a word-processor document as plain text removes any formatting information.

Before text editors existed, computer text was punched into with machines. Physical boxes of these thin cardboard cards were then inserted into a card-reader. Magnetic tape and disk "card-image" files created from such card decks often had no line-separation characters at all, and assumed fixed-length 80-character records. An alternative to cards was punched paper tape. It could be created by some (such as the ), which used special characters to indicate ends of records.

The first text editors were oriented to teleprinter- or -style terminals without displays. Commands (often a single keystroke) effected edits to a file at an imaginary insertion point called the "cursor". Edits were verified by typing a command to print a small section of the file, and periodically by printing the entire file. In some line editors, the cursor could be moved by commands that specified the line number in the file, text strings (context) for which to search, and eventually regular expressions. Line editors were major improvements over keypunching. Some line editors could be used by keypunch; editing commands could be taken from a deck of cards and applied to a specified file. Some common line editors supported a "verify" mode in which change commands displayed the altered lines.

When computer terminals with video screens became available, (sometimes called just "screen editors") became common. One of the earliest full-screen editors was O26, which was written for the operator console of the CDC 6000 series computers in 1967. Another early full-screen editor was vi. Written in the 1970s, it is still a standard editor on and operating systems. , one of the first and projects, is another early full-screen or real-time editor, one that was ported to many systems. A full-screen editor's ease-of-use and speed (compared to the line-based editors) motivated many early purchases of video terminals.

The core data structure in a text editor is the one that manages the string (sequence of characters) or list of that represents the current state of the file being edited. While the former could be stored in a single long consecutive array of characters, the desire for text editors that could more quickly insert text, delete text, and undo/redo previous edits led to the development of more complicated sequence data structures. Charles Crowley. "Data Structures for Text Sequences". Section "Introduction". A typical text editor uses a , a of lines (as in ), a , or a rope, as its sequence data structure.

Types of text editors
Some text editors are small and simple, while others offer broad and complex functions. For example, and Unix-like operating systems have the pico editor (or a variant), but many also include the vi and Emacs editors. Microsoft Windows systems come with the simple Notepad, though many people—especially programmers—prefer other with more features. Under 's classic Mac OS there was the native , which was replaced in Mac OS X by , which combines features of a text editor with those typical of a word processor such as rulers, margins and multiple font selection. These features are not available simultaneously, but must be switched by user command, or through the program automatically determining the .

Most word processors can read and write files in plain text format, allowing them to open files saved from text editors. Saving these files from a word processor, however, requires ensuring the file is written in format, and that any or BOM settings won't obscure the file for its intended use. Non- word processors, such as , are more easily pressed into service as text editors, and in fact were commonly used as such during the 1980s. The default of these word processors often resembles a markup language, with the basic format being plain text and visual formatting achieved using non-printing control characters or . Later word processors like store their files in a and are almost never used to edit plain text files.

Some text editors can edit unusually large files such as or an entire placed in a single file. Simpler text editors may just read files into the computer's main memory. With larger files, this may be a slow process, and the entire file may not fit. Some text editors do not let the user start editing until this read-in is complete. Editing performance also often suffers in nonspecialized editors, with the editor taking seconds or even minutes to respond to keystrokes or navigation commands. By only storing the visible portion of large files in memory, editing performance improves.

Some editors are programmable, meaning they can be customized for specific uses. One motive for customizing is to make a text editor use the commands of another text editor with which the user is more familiar, or to duplicate missing functionality the user has come to depend on. Software developers often use editor customizations tailored to the programming language or development environment they are working in. The programmability of some text editors is limited to enhancing the core editing functionality of the program, but can be extended far beyond editing text files—for web browsing, reading email, online chat, managing files or playing games. Emacs can even emulate Vi, its rival in the traditional of .

An important group of programmable editors uses as a scripting language. These "orthodox editors" contain a "command line" into which commands and macros can be typed and text lines into which line commands and macros can be typed. Most such editors are derivatives of EDIT or of , IBM's flagship editor for VM/SP through z/VM. Among them are THE, KEDIT, X2, Uni-edit, and SEDIT.

A text editor written or customized for a specific use can determine what the user is editing and assist the user, often by programming terms and showing with relevant documentation. Many text editors for software developers include source code syntax highlighting and automatic to make programs easier to read and write. Programming editors often let the user select the name of an , function or variable, then jump to its definition. Some also allow for easy navigation back to the original section of code by storing the initial cursor location or by displaying the requested definition in a or temporary buffer. Some editors implement this ability themselves, but often an auxiliary utility like is used to locate the definitions.

Typical features
  • Find and replace – Text editors provide extensive facilities for searching and replacing text, either on groups of files or interactively. Advanced editors can use regular expressions to search and edit text or code.
  • Cut, copy, and paste – most text editors provide methods to duplicate and move text within the file, or between files.
  • Ability to handle UTF-8 encoded text.
  • – Text editors often provide basic formatting features like , auto-indentation, formatting using characters, comment formatting, syntax highlighting and so on.
  • – As with word processors, text editors provide a way to undo and redo the last edit. Often—especially with older text editors—there is only one level of edit history remembered and successively issuing the undo command will only "toggle" the last change. Modern or more complex editors usually provide a multiple level history such that issuing the undo command repeatedly will revert the document to successively older edits. A separate redo command will cycle the edits "forward" toward the most recent changes. The number of changes remembered depends upon the editor and is often configurable by the user.
  • Data transformation – Reading or merging the contents of another text file into the file currently being edited. Some text editors provide a way to insert the output of a command issued to the operating system's shell.
  • Filtering – Some advanced text editors allow the editor to send all or sections of the file being edited to another utility and read the result back into the file in place of the lines being "filtered". This, for example, is useful for sorting a series of lines alphabetically or numerically, doing mathematical computations, indenting , and so on.
  • Syntax highlighting – contextually highlights , , and other text that appears in an organized or predictable format. Editors generally allow users to customize the colors or styles used for each language element. Some text editors also allow users to install and use themes to change the look and feel of the editor's entire .
  • - a text editor intended for use by programmers must provide some plugin mechanism, or be scriptable, so a programmer can customize the editor with features needed to manage individual software projects, customize functionality or for specific programming languages or systems, or conform to specific .

Specialised editors
Some editors include special features and extra functions, for instance,

  • Source code editors are text editors with additional functionality to facilitate the production of source code. These often feature user-programmable syntax highlighting and code navigation functions as well as coding tools or keyboard macros similar to an HTML editor (see below).
  • . This subclass includes so-called "orthodox editors" that are derivatives of Xedit. Editors that implement folding without programing-specific features are usually called outliners (see below).
  • IDEs (integrated development environments) are designed to manage and streamline large programming projects. They are usually only used for programming as they contain many features unnecessary for simple text editing.
  • World Wide Web authors are offered a variety of dedicated to the task of creating . These include: , and E Text Editor. Many offer the option of viewing a work in progress on a built-in HTML rendering engine or standard . Most is done in a dynamic programming language such as Ruby or using a source code editor or IDE. The HTML delivered by all but the simplest static web sites is stored as individual that are assembled by the software controlling the site and do not compose a complete HTML document.
  • Mathematicians, physicists, and computer scientists often produce articles and books using or in plain text files. Such documents are often produced by a standard text editor, but some people use specialized TeX editors.
  • . Also called tree-based editors, because they combine a hierarchical outline tree with a text editor. Folding (see above) can be considered a specialized form of outlining.
  • Collaborative editors allow multiple users to work on the same document simultaneously from remote locations over a network. The changes made by individual users are tracked and merged into the document automatically to eliminate the possibility of conflicting edits. These editors also typically include an component for discussion among editors.
  • Simultaneous editing is a technique in End-user development research to edit all items in a multiple selection. It allows the user to manipulate all the selected items at once through direct manipulation. The Lapis text editor and the multi edit New gedit plugin: multi edit, and a demo video. plugin for are examples of this technique. The Lapis editor can also create an automatic multiple selection based on an example item.
  • Distraction-free editors provide a minimalistic interface with the purpose of isolating the writer from the rest of the applications and operating system, thus being able to focus on the writing without distractions from interface elements like a or notification area.

Programmable editors can usually be enhanced to perform any or all of these functions, but simpler editors focus on just one, or, like , are targeted at a single programming language.

See also
  • List of text editors
  • Comparison of text editors
  • – does not change file, faster for very large files
  • – used for editing binary files
  • – used for non-interactive editing


External links

Page 1 of 1


Pages:  ..   .. 
Items:  .. 


General: Atom Feed Atom Feed  .. 
Help:  ..   .. 
Category:  ..   .. 
Media:  ..   .. 
Posts:  ..   ..   .. 


Page:  .. 
Summary:  .. 
1 Tags
10/10 Page Rank
5 Page Refs
1s Time