TECO (text editor)

"[5] By the time TECO was made available for general use, the name had become "Text Editor and Corrector",[4] since even the PDP-1 version by then supported other media.

[5] It was subsequently modified by many other people[7] and is a direct ancestor of Emacs, which was originally implemented in TECO macros.

[11] A satirical essay on computer programming, "Real Programmers Don't Use Pascal", suggested that a common game for TECO fans was to enter their name as a command sequence, and then try to work out what would happen.

TECO became more widely used following a Digital Equipment Corporation (DEC) PDP-6 implementation developed at MIT's Project MAC in 1964.

This implementation continuously displayed the edited text visually on a CRT screen, and was used as an interactive online editor.

[16] On these machines, the normal development process involved the use of a Friden Flexowriter to prepare source code offline on a continuous strip of punched paper tape.

Thus IBM programmers could read, insert, delete, and move lines of code by physically manipulating the cards in the deck.

The various looping and conditional constructs (which made TECO Turing-complete) were included in order to provide sufficient descriptive power for the correction tape.

[citation needed] Carl Mikkelsen had implemented a real-time edit mode loosely based on the TECO-6 graphic console commands, but working with the newly installed Datapoint-3300 CRT text displays.

[19] The TECO buffer implementation, however, was terribly inefficient for processing single character insert or delete functions—editing consumed 100% of the PDP-10.

With Richard Greenblatt's support, in summer of 1972 Carl reimplemented the TECO buffer storage and reformed the macros as native PDP-10 code.

At the same time, Rici Liknaitski added input-time macros (cntl+]), which operated as the command string was read rather than when executed.

[citation needed] Read-time macros made the TECO auxiliary text buffers, called Q-registers, more useful.

TECO32 was then converted with the VEST and AEST binary translation utilities to make it compatible with OpenVMS on the Alpha and Itanium respectively.

Just about any possible typing error while talking with TECO will probably destroy your program, or even worse - introduce subtle and mysterious bugs in a once working subroutine.

TECO commands are characters (including control-characters), and the prompt is a single asterisk: The escape key displays as a dollar sign, pressed once it delineates the end of a command requiring an argument and pressed twice initiates the execution of the entered commands: Given a file named hello.c with the following contents: one could use the following TECO session (noting that the prompt is "*" and "$" is how ESC is echoed) to change "Hello" into "Goodbye": These two example programs are a simple interchange sort of the current text buffer, based on the 1st character of each line, taken from the PDP-11 TECO User's Guide.