====== Survival TECO ====== Below is a subset of commands for minimal useful editing with TECO, the venerable command-based, character-oriented text editor. * Commands are executed by following them with the key sequence **Esc Esc** instead of **Enter**. An arbitrarily long sequence of commands can be entered and executed together. * TECO doesn't file name arguments passed on the command line. Instead, after starting TECO you have to specify the input and/or output file with the commands **ER**, **EW**, or **EB**, then read the input file into the edit buffer with the command **Y**. * TECO considers files containing form-feed characters (ASCII 0x0b, **^L**) to be composed of multiple pages with each page consisting of the text between form-feed characters or the beginning or end of the file. TECO will only read into the buffer and edit one page at a time. To edit a multi-page file, complete editing on the first page then use the **P** command to save the page to the output file, reinitialize the buffer, and read the next page from the input file. Once a page has been saved with the **P** command, it may not be revisited except by saving the entire file and restarting the editing process from the beginning. Repeat the process until all necessary pages have been edited. The **EX** command automatically copies any unedited pages in the input file to the output file before exiting. ^ File I/O and Termination ^^ | EB//file//**Esc** | Open //file// for **B**oth input and output | | ER//file//**Esc** | Open //file// for **R**ead-only (input) | | EW//file//**Esc** | Open //file// for **W**rite-only (output) | | Y | Initialize buffer and read from input file (one page) | | P | Append buffer to output file, reinitialize buffer, read next **P**age from input file | | EX | Write buffer to output file and **EX**it | | **^C ^C** | Abandon buffer changes and exit | ^ Movement ^^ | [//n//]C | Move one///n// **C**haracter(s) forward | | -[//n//]C\\ [//n//]R | Move one///n// **C**haracter(s) backward (**R**everse) | | [//n//]L | Move to beginning of first///n//th following **L**ine | | -[//n//]L | Move to beginning of first///n//th preceding **L**ine | | 0L | Move to beginning of current line | | :L | Move to end of current **L**ine | | [//n//]J | **J**ump to first///n//+1 character in buffer | | ZJ | **J**ump to end of buffer | ^ Display ^^ | [//n//]T | **T**ype from current position to end of current///n//-1 following line(s) | | 0T | **T**ype from beginning of line to curent position | | -[//n//]T | **T**ype one///n// preceding line(s) and current line up to position | | HT | **T**ype whole buffer | ^ Useful Combinations ^^ | 0TT | Type current line (current position unchanged) | | 0LT | Type current line, moving position to beginning of line | ^ Insertion ^^ | I//text//**Esc** | **I**nsert //text// at current position | ^ Deletion ^^ | [//n//]D | **D**elete one///n// character(s) after position | | -[//n//]D | **D**elete one///n// character(s) before position | | [//n//]K | Delete from position through end of current///n//-1 following line(s) | | -[//n//]K | Delete one///n// preceding lines to current position | | 0K | Delete from beginning of current line to position | | :K | Delete from position to end of current line leaving end-of-line | | HK | Delete whole buffer | ^ Search/Replace ^^ | [//n//]S//text//**Esc** | **S**earch for next///n//th occurrence of //text// | | [//n//]FS//text1//**Esc**//text2//**Esc** | Replace next///n//th occurrence of //text1// with //text2// | ^ Copy/Paste ^^ | [//n//]X//q// | Copy from position through end of current///n//-1 following line(s) to register //q// (single character A-Z, 0-9) | | G//q// | Insert text in register //q// into buffer at current position | ===== References ===== * [[http://www.avanthar.com/~healyzh/_info_/its.primer|Golden, V. Ellen. An Introduction to ITS for the MACSYMA User. Massachusetts Institute of Technology Laboratory for Computer Science Mathlab Group. 14 April 1981. <http://www.avanthar.com/~healyzh/_info_/its.primer> accessed 4 June 2010.]] * [[http://www.avanthar.com/~healyzh/teco/TecoPocketGuide.html|TECO Pocket Guide. Digital Equipment Corporation. 1978. <http://www.avanthar.com/~healyzh/teco/TecoPocketGuide.html> accessed 4 June 2010.]] * [[http://www.hactrn.net/sra/alice/alices.pdp10|You can hack anything you want, with TECO and DDT.]] ---- | Edited with | **TECO** | $Id: survival-teco.html,v 1.4 2010/06/12 09:44:01 papa Exp $