summaryrefslogtreecommitdiff
path: root/lib/termcap/grot/termcap.info-3
diff options
context:
space:
mode:
Diffstat (limited to 'lib/termcap/grot/termcap.info-3')
-rw-r--r--lib/termcap/grot/termcap.info-31480
1 files changed, 0 insertions, 1480 deletions
diff --git a/lib/termcap/grot/termcap.info-3 b/lib/termcap/grot/termcap.info-3
deleted file mode 100644
index d5b309f..0000000
--- a/lib/termcap/grot/termcap.info-3
+++ /dev/null
@@ -1,1480 +0,0 @@
-This is Info file ./termcap.info, produced by Makeinfo-1.55 from the
-input file ./termcap.texi.
-
- This file documents the termcap library of the GNU system.
-
- Copyright (C) 1988 Free Software Foundation, Inc.
-
- Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
-
- Permission is granted to copy and distribute modified versions of
-this manual under the conditions for verbatim copying, provided that
-the entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
- Permission is granted to copy and distribute translations of this
-manual into another language, under the above conditions for modified
-versions, except that this permission notice may be stated in a
-translation approved by the Foundation.
-
-
-File: termcap.info, Node: Insdel Char, Next: Standout, Prev: Insdel Line, Up: Capabilities
-
-Insert/Delete Character
-=======================
-
- "Inserting a character" means creating a blank space in the middle
-of a line, and pushing the rest of the line rightward. The character
-in the rightmost column is lost.
-
- "Deleting a character" means causing the character to disappear from
-the screen, closing up the gap by moving the rest of the line leftward.
-A blank space appears in the rightmost column.
-
- Insertion and deletion of characters is useful in programs that
-maintain an updating display some parts of which may get longer or
-shorter. It is also useful in editors for redisplaying the results of
-editing within a line.
-
- Many terminals provide commands to insert or delete a single
-character at the cursor position. Some provide the ability to insert
-or delete several characters with one command, using the number of
-characters to insert or delete as a parameter.
-
- Many terminals provide an insert mode in which outputting a graphic
-character has the added effect of inserting a position for that
-character. A special command string is used to enter insert mode and
-another is used to exit it. The reason for designing a terminal with
-an insert mode rather than an insert command is that inserting
-character positions is usually followed by writing characters into
-them. With insert mode, this is as fast as simply writing the
-characters, except for the fixed overhead of entering and leaving
-insert mode. However, when the line speed is great enough, padding may
-be required for the graphic characters output in insert mode.
-
- Some terminals require you to enter insert mode and then output a
-special command for each position to be inserted. Or they may require
-special commands to be output before or after each graphic character to
-be inserted.
-
- Deletion of characters is usually accomplished by a straightforward
-command to delete one or several positions; but on some terminals, it
-is necessary to enter a special delete mode before using the delete
-command, and leave delete mode afterward. Sometimes delete mode and
-insert mode are the same mode.
-
- Some terminals make a distinction between character positions in
-which a space character has been output and positions which have been
-cleared. On these terminals, the effect of insert or delete character
-runs to the first cleared position rather than to the end of the line.
-In fact, the effect may run to more than one line if there is no
-cleared position to stop the shift on the first line. These terminals
-are identified by the `in' flag capability.
-
- On terminals with the `in' flag, the technique of skipping over
-characters that you know were cleared, and then outputting text later
-on in the same line, causes later insert and delete character
-operations on that line to do nonstandard things. A program that has
-any chance of doing this must check for the `in' flag and must be
-careful to write explicit space characters into the intermediate
-columns when `in' is present.
-
- A plethora of terminal capabilities are needed to describe all of
-this complexity. Here is a list of them all. Following the list, we
-present an algorithm for programs to use to take proper account of all
-of these capabilities.
-
-`im'
- String of commands to enter insert mode.
-
- If the terminal has no special insert mode, but it can insert
- characters with a special command, `im' should be defined with a
- null value, because the `vi' editor assumes that insertion of a
- character is impossible if `im' is not provided.
-
- New programs should not act like `vi'. They should pay attention
- to `im' only if it is defined.
-
-`ei'
- String of commands to leave insert mode. This capability must be
- present if `im' is.
-
- On a few old terminals the same string is used to enter and exit
- insert mode. This string turns insert mode on if it was off, and
- off it it was on. You can tell these terminals because the `ei'
- string equals the `im' string. If you want to support these
- terminals, you must always remember accurately whether insert mode
- is in effect. However, these terminals are obsolete, and it is
- reasonable to refuse to support them. On all modern terminals, you
- can safely output `ei' at any time to ensure that insert mode is
- turned off.
-
-`ic'
- String of commands to insert one character position at the cursor.
- The cursor does not move.
-
- If outputting a graphic character while in insert mode is
- sufficient to insert the character, then the `ic' capability
- should be defined with a null value.
-
- If your terminal offers a choice of ways to insert--either use
- insert mode or use a special command--then define `im' and do not
- define `ic', since this gives the most efficient operation when
- several characters are to be inserted. *Do not* define both
- strings, for that means that *both* must be used each time
- insertion is done.
-
-`ip'
- String of commands to output following an inserted graphic
- character in insert mode. Often it is used just for a padding
- spec, when padding is needed after an inserted character (*note
- Padding::.).
-
-`IC'
- String of commands to insert N character positions at and after
- the cursor. It has the same effect as repeating the `ic' string
- and a space, N times.
-
- If `IC' is provided, application programs may use it without first
- entering insert mode.
-
-`mi'
- Flag whose presence means it is safe to move the cursor while in
- insert mode and assume the terminal remains in insert mode.
-
-`in'
- Flag whose presence means that the terminal distinguishes between
- character positions in which space characters have been output and
- positions which have been cleared.
-
- An application program can assume that the terminal can do character
-insertion if *any one of* the capabilities `IC', `im', `ic' or `ip' is
-provided.
-
- To insert N blank character positions, move the cursor to the place
-to insert them and follow this algorithm:
-
- 1. If an `IC' string is provided, output it with parameter N and you
- are finished. Otherwise (or if you don't want to bother to look
- for an `IC' string) follow the remaining steps.
-
- 2. Output the `im' string, if there is one, unless the terminal is
- already in insert mode.
-
- 3. Repeat steps 4 through 6, N times.
-
- 4. Output the `ic' string if any.
-
- 5. Output a space.
-
- 6. Output the `ip' string if any.
-
- 7. Output the `ei' string, eventually, to exit insert mode. There is
- no need to do this right away. If the `mi' flag is present, you
- can move the cursor and the cursor will remain in insert mode;
- then you can do more insertion elsewhere without reentering insert
- mode.
-
- To insert N graphic characters, position the cursor and follow this
-algorithm:
-
- 1. If an `IC' string is provided, output it with parameter N, then
- output the graphic characters, and you are finished. Otherwise
- (or if you don't want to bother to look for an `IC' string) follow
- the remaining steps.
-
- 2. Output the `im' string, if there is one, unless the terminal is
- already in insert mode.
-
- 3. For each character to be output, repeat steps 4 through 6.
-
- 4. Output the `ic' string if any.
-
- 5. Output the next graphic character.
-
- 6. Output the `ip' string if any.
-
- 7. Output the `ei' string, eventually, to exit insert mode. There is
- no need to do this right away. If the `mi' flag is present, you
- can move the cursor and the cursor will remain in insert mode;
- then you can do more insertion elsewhere without reentering insert
- mode.
-
- Note that this is not the same as the original Unix termcap
-specifications in one respect: it assumes that the `IC' string can be
-used without entering insert mode. This is true as far as I know, and
-it allows you be able to avoid entering and leaving insert mode, and
-also to be able to avoid the inserted-character padding after the
-characters that go into the inserted positions.
-
- Deletion of characters is less complicated; deleting one column is
-done by outputting the `dc' string. However, there may be a delete
-mode that must be entered with `dm' in order to make `dc' work.
-
-`dc'
- String of commands to delete one character position at the cursor.
- If `dc' is not present, the terminal cannot delete characters.
-
-`DC'
- String of commands to delete N characters starting at the cursor.
- It has the same effect as repeating the `dc' string N times. Any
- terminal description that has `DC' also has `dc'.
-
-`dm'
- String of commands to enter delete mode. If not present, there is
- no delete mode, and `dc' can be used at any time (assuming there is
- a `dc').
-
-`ed'
- String of commands to exit delete mode. This must be present if
- `dm' is.
-
- To delete N character positions, position the cursor and follow these
-steps:
-
- 1. If the `DC' string is present, output it with parameter N and you
- are finished. Otherwise, follow the remaining steps.
-
- 2. Output the `dm' string, unless you know the terminal is already in
- delete mode.
-
- 3. Output the `dc' string N times.
-
- 4. Output the `ed' string eventually. If the flag capability `mi' is
- present, you can move the cursor and do more deletion without
- leaving and reentering delete mode.
-
- As with the `IC' string, we have departed from the original termcap
-specifications by assuming that `DC' works without entering delete mode
-even though `dc' would not.
-
- If the `dm' and `im' capabilities are both present and have the same
-value, it means that the terminal has one mode for both insertion and
-deletion. It is useful for a program to know this, because then it can
-do insertions after deletions, or vice versa, without leaving
-insert/delete mode and reentering it.
-
-
-File: termcap.info, Node: Standout, Next: Underlining, Prev: Insdel Char, Up: Capabilities
-
-Standout and Appearance Modes
-=============================
-
- "Appearance modes" are modifications to the ways characters are
-displayed. Typical appearance modes include reverse video, dim, bright,
-blinking, underlined, invisible, and alternate character set. Each
-kind of terminal supports various among these, or perhaps none.
-
- For each type of terminal, one appearance mode or combination of
-them that looks good for highlighted text is chosen as the "standout
-mode". The capabilities `so' and `se' say how to enter and leave
-standout mode. Programs that use appearance modes only to highlight
-some text generally use the standout mode so that they can work on as
-many terminals as possible. Use of specific appearance modes other
-than "underlined" and "alternate character set" is rare.
-
- Terminals that implement appearance modes fall into two general
-classes as to how they do it.
-
- In some terminals, the presence or absence of any appearance mode is
-recorded separately for each character position. In these terminals,
-each graphic character written is given the appearance modes current at
-the time it is written, and keeps those modes until it is erased or
-overwritten. There are special commands to turn the appearance modes
-on or off for characters to be written in the future.
-
- In other terminals, the change of appearance modes is represented by
-a marker that belongs to a certain screen position but affects all
-following screen positions until the next marker. These markers are
-traditionally called "magic cookies".
-
- The same capabilities (`so', `se', `mb' and so on) for turning
-appearance modes on and off are used for both magic-cookie terminals
-and per-character terminals. On magic cookie terminals, these give the
-commands to write the magic cookies. On per-character terminals, they
-change the current modes that affect future output and erasure. Some
-simple applications can use these commands without knowing whether or
-not they work by means of cookies.
-
- However, a program that maintains and updates a display needs to know
-whether the terminal uses magic cookies, and exactly what their effect
-is. This information comes from the `sg' capability.
-
- The `sg' capability is a numeric capability whose presence indicates
-that the terminal uses magic cookies for appearance modes. Its value is
-the number of character positions that a magic cookie occupies. Usually
-the cookie occupies one or more character positions on the screen, and
-these character positions are displayed as blank, but in some terminals
-the cookie has zero width.
-
- The `sg' capability describes both the magic cookie to turn standout
-on and the cookie to turn it off. This makes the assumption that both
-kinds of cookie have the same width on the screen. If that is not true,
-the narrower cookie must be "widened" with spaces until it has the same
-width as the other.
-
- On some magic cookie terminals, each line always starts with normal
-display; in other words, the scope of a magic cookie never extends over
-more than one line. But on other terminals, one magic cookie affects
-all the lines below it unless explicitly canceled. Termcap does not
-define any way to distinguish these two ways magic cookies can work.
-To be safe, it is best to put a cookie at the beginning of each line.
-
- On some per-character terminals, standout mode or other appearance
-modes may be canceled by moving the cursor. On others, moving the
-cursor has no effect on the state of the appearance modes. The latter
-class of terminals are given the flag capability `ms' ("can move in
-standout"). All programs that might have occasion to move the cursor
-while appearance modes are turned on must check for this flag; if it is
-not present, they should reset appearance modes to normal before doing
-cursor motion.
-
- A program that has turned on only standout mode should use `se' to
-reset the standout mode to normal. A program that has turned on only
-alternate character set mode should use `ae' to return it to normal.
-If it is possible that any other appearance modes are turned on, use the
-`me' capability to return them to normal.
-
- Note that the commands to turn on one appearance mode, including `so'
-and `mb' ... `mr', if used while some other appearance modes are turned
-on, may combine the two modes on some terminals but may turn off the
-mode previously enabled on other terminals. This is because some
-terminals do not have a command to set or clear one appearance mode
-without changing the others. Programs should not attempt to use
-appearance modes in combination except with `sa', and when switching
-from one single mode to another should always turn off the previously
-enabled mode and then turn on the new desired mode.
-
- On some old terminals, the `so' and `se' commands may be the same
-command, which has the effect of turning standout on if it is off, or
-off it is on. It is therefore risky for a program to output extra `se'
-commands for good measure. Fortunately, all these terminals are
-obsolete.
-
- Programs that update displays in which standout-text may be replaced
-with non-standout text must check for the `xs' flag. In a per-character
-terminal, this flag says that the only way to remove standout once
-written is to clear that portion of the line with the `ce' string or
-something even more powerful (*note Clearing::.); just writing new
-characters at those screen positions will not change the modes in
-effect there. In a magic cookie terminal, `xs' says that the only way
-to remove a cookie is to clear a portion of the line that includes the
-cookie; writing a different cookie at the same position does not work.
-
- Such programs must also check for the `xt' flag, which means that the
-terminal is a Teleray 1061. On this terminal it is impossible to
-position the cursor at the front of a magic cookie, so the only two
-ways to remove a cookie are (1) to delete the line it is on or (2) to
-position the cursor at least one character before it (possibly on a
-previous line) and output the `se' string, which on these terminals
-finds and removes the next `so' magic cookie on the screen. (It may
-also be possible to remove a cookie which is not at the beginning of a
-line by clearing that line.) The `xt' capability also has implications
-for the use of tab characters, but in that regard it is obsolete (*Note
-Cursor Motion::).
-
-`so'
- String of commands to enter standout mode.
-
-`se'
- String of commands to leave standout mode.
-
-`sg'
- Numeric capability, the width on the screen of the magic cookie.
- This capability is absent in terminals that record appearance modes
- character by character.
-
-`ms'
- Flag whose presence means that it is safe to move the cursor while
- the appearance modes are not in the normal state. If this flag is
- absent, programs should always reset the appearance modes to
- normal before moving the cursor.
-
-`xs'
- Flag whose presence means that the only way to reset appearance
- modes already on the screen is to clear to end of line. On a
- per-character terminal, you must clear the area where the modes
- are set. On a magic cookie terminal, you must clear an area
- containing the cookie. See the discussion above.
-
-`xt'
- Flag whose presence means that the cursor cannot be positioned
- right in front of a magic cookie, and that `se' is a command to
- delete the next magic cookie following the cursor. See discussion
- above.
-
-`mb'
- String of commands to enter blinking mode.
-
-`md'
- String of commands to enter double-bright mode.
-
-`mh'
- String of commands to enter half-bright mode.
-
-`mk'
- String of commands to enter invisible mode.
-
-`mp'
- String of commands to enter protected mode.
-
-`mr'
- String of commands to enter reverse-video mode.
-
-`me'
- String of commands to turn off all appearance modes, including
- standout mode and underline mode. On some terminals it also turns
- off alternate character set mode; on others, it may not. This
- capability must be present if any of `mb' ... `mr' is present.
-
-`as'
- String of commands to turn on alternate character set mode. This
- mode assigns some or all graphic characters an alternate picture
- on the screen. There is no standard as to what the alternate
- pictures look like.
-
-`ae'
- String of commands to turn off alternate character set mode.
-
-`sa'
- String of commands to turn on an arbitrary combination of
- appearance modes. It accepts 9 parameters, each of which controls
- a particular kind of appearance mode. A parameter should be 1 to
- turn its appearance mode on, or zero to turn that mode off. Most
- terminals do not support the `sa' capability, even among those
- that do have various appearance modes.
-
- The nine parameters are, in order, STANDOUT, UNDERLINE, REVERSE,
- BLINK, HALF-BRIGHT, DOUBLE-BRIGHT, BLANK, PROTECT, ALT CHAR SET.
-
-
-File: termcap.info, Node: Underlining, Next: Cursor Visibility, Prev: Standout, Up: Capabilities
-
-Underlining
-===========
-
- Underlining on most terminals is a kind of appearance mode, much like
-standout mode. Therefore, it may be implemented using magic cookies or
-as a flag in the terminal whose current state affects each character
-that is output. *Note Standout::, for a full explanation.
-
- The `ug' capability is a numeric capability whose presence indicates
-that the terminal uses magic cookies for underlining. Its value is the
-number of character positions that a magic cookie for underlining
-occupies; it is used for underlining just as `sg' is used for standout.
-Aside from the simplest applications, it is impossible to use
-underlining correctly without paying attention to the value of `ug'.
-
-`us'
- String of commands to turn on underline mode or to output a magic
- cookie to start underlining.
-
-`ue'
- String of commands to turn off underline mode or to output a magic
- cookie to stop underlining.
-
-`ug'
- Width of magic cookie that represents a change of underline mode;
- or missing, if the terminal does not use a magic cookie for this.
-
-`ms'
- Flag whose presence means that it is safe to move the cursor while
- the appearance modes are not in the normal state. Underlining is
- an appearance mode. If this flag is absent, programs should
- always turn off underlining before moving the cursor.
-
- There are two other, older ways of doing underlining: there can be a
-command to underline a single character, or the output of `_', the
-ASCII underscore character, as an overstrike could cause a character to
-be underlined. New programs need not bother to handle these
-capabilities unless the author cares strongly about the obscure
-terminals which support them. However, terminal descriptions should
-provide these capabilities when appropriate.
-
-`uc'
- String of commands to underline the character under the cursor, and
- move the cursor right.
-
-`ul'
- Flag whose presence means that the terminal can underline by
- overstriking an underscore character (`_'); some terminals can do
- this even though they do not support overstriking in general. An
- implication of this flag is that when outputting new text to
- overwrite old text, underscore characters must be treated
- specially lest they underline the old text instead.
-
-
-File: termcap.info, Node: Cursor Visibility, Next: Bell, Prev: Underlining, Up: Capabilities
-
-Cursor Visibility
-=================
-
- Some terminals have the ability to make the cursor invisible, or to
-enhance it. Enhancing the cursor is often done by programs that plan
-to use the cursor to indicate to the user a position of interest that
-may be anywhere on the screen--for example, the Emacs editor enhances
-the cursor on entry. Such programs should always restore the cursor to
-normal on exit.
-
-`vs'
- String of commands to enhance the cursor.
-
-`vi'
- String of commands to make the cursor invisible.
-
-`ve'
- String of commands to return the cursor to normal.
-
- If you define either `vs' or `vi', you must also define `ve'.
-
-
-File: termcap.info, Node: Bell, Next: Keypad, Prev: Cursor Visibility, Up: Capabilities
-
-Bell
-====
-
- Here we describe commands to make the terminal ask for the user to
-pay attention to it.
-
-`bl'
- String of commands to cause the terminal to make an audible sound.
- If this capability is absent, the terminal has no way to make a
- suitable sound.
-
-`vb'
- String of commands to cause the screen to flash to attract
- attention ("visible bell"). If this capability is absent, the
- terminal has no way to do such a thing.
-
-
-File: termcap.info, Node: Keypad, Next: Meta Key, Prev: Bell, Up: Capabilities
-
-Keypad and Function Keys
-========================
-
- Many terminals have arrow and function keys that transmit specific
-character sequences to the computer. Since the precise sequences used
-depend on the terminal, termcap defines capabilities used to say what
-the sequences are. Unlike most termcap string-valued capabilities,
-these are not strings of commands to be sent to the terminal, rather
-strings that are received from the terminal.
-
- Programs that expect to use keypad keys should check, initially, for
-a `ks' capability and send it, to make the keypad actually transmit.
-Such programs should also send the `ke' string when exiting.
-
-`ks'
- String of commands to make the keypad keys transmit. If this
- capability is not provided, but the others in this section are,
- programs may assume that the keypad keys always transmit.
-
-`ke'
- String of commands to make the keypad keys work locally. This
- capability is provided only if `ks' is.
-
-`kl'
- String of input characters sent by typing the left-arrow key. If
- this capability is missing, you cannot expect the terminal to have
- a left-arrow key that transmits anything to the computer.
-
-`kr'
- String of input characters sent by typing the right-arrow key.
-
-`ku'
- String of input characters sent by typing the up-arrow key.
-
-`kd'
- String of input characters sent by typing the down-arrow key.
-
-`kh'
- String of input characters sent by typing the "home-position" key.
-
-`K1' ... `K5'
- Strings of input characters sent by the five other keys in a 3-by-3
- array that includes the arrow keys, if the keyboard has such a
- 3-by-3 array. Note that one of these keys may be the
- "home-position" key, in which case one of these capabilities will
- have the same value as the `kh' key.
-
-`k0'
- String of input characters sent by function key 10 (or 0, if the
- terminal has one labeled 0).
-
-`k1' ... `k9'
- Strings of input characters sent by function keys 1 through 9,
- provided for those function keys that exist.
-
-`kn'
- Number: the number of numbered function keys, if there are more
- than 10.
-
-`l0' ... `l9'
- Strings which are the labels appearing on the keyboard on the keys
- described by the capabilities `k0' ... `l9'. These capabilities
- should be left undefined if the labels are `f0' or `f10' and `f1'
- ... `f9'.
-
-`kH'
- String of input characters sent by the "home down" key, if there is
- one.
-
-`kb'
- String of input characters sent by the "backspace" key, if there is
- one.
-
-`ka'
- String of input characters sent by the "clear all tabs" key, if
- there is one.
-
-`kt'
- String of input characters sent by the "clear tab stop this column"
- key, if there is one.
-
-`kC'
- String of input characters sent by the "clear screen" key, if
- there is one.
-
-`kD'
- String of input characters sent by the "delete character" key, if
- there is one.
-
-`kL'
- String of input characters sent by the "delete line" key, if there
- is one.
-
-`kM'
- String of input characters sent by the "exit insert mode" key, if
- there is one.
-
-`kE'
- String of input characters sent by the "clear to end of line" key,
- if there is one.
-
-`kS'
- String of input characters sent by the "clear to end of screen"
- key, if there is one.
-
-`kI'
- String of input characters sent by the "insert character" or "enter
- insert mode" key, if there is one.
-
-`kA'
- String of input characters sent by the "insert line" key, if there
- is one.
-
-`kN'
- String of input characters sent by the "next page" key, if there is
- one.
-
-`kP'
- String of input characters sent by the "previous page" key, if
- there is one.
-
-`kF'
- String of input characters sent by the "scroll forward" key, if
- there is one.
-
-`kR'
- String of input characters sent by the "scroll reverse" key, if
- there is one.
-
-`kT'
- String of input characters sent by the "set tab stop in this
- column" key, if there is one.
-
-`ko'
- String listing the other function keys the terminal has. This is a
- very obsolete way of describing the same information found in the
- `kH' ... `kT' keys. The string contains a list of two-character
- termcap capability names, separated by commas. The meaning is
- that for each capability name listed, the terminal has a key which
- sends the string which is the value of that capability. For
- example, the value `:ko=cl,ll,sf,sr:' says that the terminal has
- four function keys which mean "clear screen", "home down", "scroll
- forward" and "scroll reverse".
-
-
-File: termcap.info, Node: Meta Key, Next: Initialization, Prev: Keypad, Up: Capabilities
-
-Meta Key
-========
-
- A Meta key is a key on the keyboard that modifies each character you
-type by controlling the 0200 bit. This bit is on if and only if the
-Meta key is held down when the character is typed. Characters typed
-using the Meta key are called Meta characters. Emacs uses Meta
-characters as editing commands.
-
-`km'
- Flag whose presence means that the terminal has a Meta key.
-
-`mm'
- String of commands to enable the functioning of the Meta key.
-
-`mo'
- String of commands to disable the functioning of the Meta key.
-
- If the terminal has `km' but does not have `mm' and `mo', it means
-that the Meta key always functions. If it has `mm' and `mo', it means
-that the Meta key can be turned on or off. Send the `mm' string to
-turn it on, and the `mo' string to turn it off. I do not know why one
-would ever not want it to be on.
-
-
-File: termcap.info, Node: Initialization, Next: Pad Specs, Prev: Meta Key, Up: Capabilities
-
-Initialization
-==============
-
-`ti'
- String of commands to put the terminal into whatever special modes
- are needed or appropriate for programs that move the cursor
- nonsequentially around the screen. Programs that use termcap to do
- full-screen display should output this string when they start up.
-
-`te'
- String of commands to undo what is done by the `ti' string.
- Programs that output the `ti' string on entry should output this
- string when they exit.
-
-`is'
- String of commands to initialize the terminal for each login
- session.
-
-`if'
- String which is the name of a file containing the string of
- commands to initialize the terminal for each session of use.
- Normally `is' and `if' are not both used.
-
-`i1'
-`i3'
- Two more strings of commands to initialize the terminal for each
- login session. The `i1' string (if defined) is output before `is'
- or `if', and the `i3' string (if defined) is output after.
-
- The reason for having three separate initialization strings is to
- make it easier to define a group of related terminal types with
- slightly different initializations. Define two or three of the
- strings in the basic type; then the other types can override one
- or two of the strings.
-
-`rs'
- String of commands to reset the terminal from any strange mode it
- may be in. Normally this includes the `is' string (or other
- commands with the same effects) and more. What would go in the
- `rs' string but not in the `is' string are annoying or slow
- commands to bring the terminal back from strange modes that nobody
- would normally use.
-
-`it'
- Numeric value, the initial spacing between hardware tab stop
- columns when the terminal is powered up. Programs to initialize
- the terminal can use this to decide whether there is a need to set
- the tab stops. If the initial width is 8, well and good; if it is
- not 8, then the tab stops should be set; if they cannot be set,
- the kernel is told to convert tabs to spaces, and other programs
- will observe this and do likewise.
-
-`ct'
- String of commands to clear all tab stops.
-
-`st'
- String of commands to set tab stop at current cursor column on all
- lines.
-
-`NF'
- Flag whose presence means that the terminal does not support
- XON/XOFF flow control. Programs should not send XON (`C-q') or
- XOFF (`C-s') characters to the terminal.
-
-
-File: termcap.info, Node: Pad Specs, Next: Status Line, Prev: Initialization, Up: Capabilities
-
-Padding Capabilities
-====================
-
- There are two terminal capabilities that exist just to explain the
-proper way to obey the padding specifications in all the command string
-capabilities. One, `pc', must be obeyed by all termcap-using programs.
-
-`pb'
- Numeric value, the lowest baud rate at which padding is actually
- needed. Programs may check this and refrain from doing any
- padding at lower speeds.
-
-`pc'
- String of commands for padding. The first character of this
- string is to be used as the pad character, instead of using null
- characters for padding. If `pc' is not provided, use null
- characters. Every program that uses termcap must look up this
- capability and use it to set the variable `PC' that is used by
- `tputs'. *Note Padding::.
-
- Some termcap capabilities exist just to specify the amount of
-padding that the kernel should give to cursor motion commands used in
-ordinary sequential output.
-
-`dC'
- Numeric value, the number of msec of padding needed for the
- carriage-return character.
-
-`dN'
- Numeric value, the number of msec of padding needed for the newline
- (linefeed) character.
-
-`dB'
- Numeric value, the number of msec of padding needed for the
- backspace character.
-
-`dF'
- Numeric value, the number of msec of padding needed for the
- formfeed character.
-
-`dT'
- Numeric value, the number of msec of padding needed for the tab
- character.
-
- In some systems, the kernel uses the above capabilities; in other
-systems, the kernel uses the paddings specified in the string
-capabilities `cr', `sf', `le', `ff' and `ta'. Descriptions of
-terminals which require such padding should contain the `dC' ... `dT'
-capabilities and also specify the appropriate padding in the
-corresponding string capabilities. Since no modern terminals require
-padding for ordinary sequential output, you probably won't need to do
-either of these things.
-
-
-File: termcap.info, Node: Status Line, Next: Half-Line, Prev: Pad Specs, Up: Capabilities
-
-Status Line
-===========
-
- A "status line" is a line on the terminal that is not used for
-ordinary display output but instead used for a special message. The
-intended use is for a continuously updated description of what the
-user's program is doing, and that is where the name "status line" comes
-from, but in fact it could be used for anything. The distinguishing
-characteristic of a status line is that ordinary output to the terminal
-does not affect it; it changes only if the special status line commands
-of this section are used.
-
-`hs'
- Flag whose presence means that the terminal has a status line. If
- a terminal description specifies that there is a status line, it
- must provide the `ts' and `fs' capabilities.
-
-`ts'
- String of commands to move the terminal cursor into the status
- line. Usually these commands must specifically record the old
- cursor position for the sake of the `fs' string.
-
-`fs'
- String of commands to move the cursor back from the status line to
- its previous position (outside the status line).
-
-`es'
- Flag whose presence means that other display commands work while
- writing the status line. In other words, one can clear parts of
- it, insert or delete characters, move the cursor within it using
- `ch' if there is a `ch' capability, enter and leave standout mode,
- and so on.
-
-`ds'
- String of commands to disable the display of the status line. This
- may be absent, if there is no way to disable the status line
- display.
-
-`ws'
- Numeric value, the width of the status line. If this capability is
- absent in a terminal that has a status line, it means the status
- line is the same width as the other lines.
-
- Note that the value of `ws' is sometimes as small as 8.
-
-
-File: termcap.info, Node: Half-Line, Next: Printer, Prev: Status Line, Up: Capabilities
-
-Half-Line Motion
-================
-
- Some terminals have commands for moving the cursor vertically by
-half-lines, useful for outputting subscripts and superscripts. Mostly
-it is hardcopy terminals that have such features.
-
-`hu'
- String of commands to move the cursor up half a line. If the
- terminal is a display, it is your responsibility to avoid moving
- up past the top line; however, most likely the terminal that
- supports this is a hardcopy terminal and there is nothing to be
- concerned about.
-
-`hd'
- String of commands to move the cursor down half a line. If the
- terminal is a display, it is your responsibility to avoid moving
- down past the bottom line, etc.
-
-
-File: termcap.info, Node: Printer, Prev: Half-Line, Up: Capabilities
-
-Controlling Printers Attached to Terminals
-==========================================
-
- Some terminals have attached hardcopy printer ports. They may be
-able to copy the screen contents to the printer; they may also be able
-to redirect output to the printer. Termcap does not have anything to
-tell the program whether the redirected output appears also on the
-screen; it does on some terminals but not all.
-
-`ps'
- String of commands to cause the contents of the screen to be
- printed. If it is absent, the screen contents cannot be printed.
-
-`po'
- String of commands to redirect further output to the printer.
-
-`pf'
- String of commands to terminate redirection of output to the
- printer. This capability must be present in the description if
- `po' is.
-
-`pO'
- String of commands to redirect output to the printer for next N
- characters of output, regardless of what they are. Redirection
- will end automatically after N characters of further output. Until
- then, nothing that is output can end redirection, not even the
- `pf' string if there is one. The number N should not be more than
- 255.
-
- One use of this capability is to send non-text byte sequences
- (such as bit-maps) to the printer.
-
- Most terminals with printers do not support all of `ps', `po' and
-`pO'; any one or two of them may be supported. To make a program that
-can send output to all kinds of printers, it is necessary to check for
-all three of these capabilities, choose the most convenient of the ones
-that are provided, and use it in its own appropriate fashion.
-
-
-File: termcap.info, Node: Summary, Next: Var Index, Prev: Capabilities, Up: Top
-
-Summary of Capability Names
-***************************
-
- Here are all the terminal capability names in alphabetical order
-with a brief description of each. For cross references to their
-definitions, see the index of capability names (*note Cap Index::.).
-
-`ae'
- String to turn off alternate character set mode.
-
-`al'
- String to insert a blank line before the cursor.
-
-`AL'
- String to insert N blank lines before the cursor.
-
-`am'
- Flag: output to last column wraps cursor to next line.
-
-`as'
- String to turn on alternate character set mode.like.
-
-`bc'
- Very obsolete alternative name for the `le' capability.
-
-`bl'
- String to sound the bell.
-
-`bs'
- Obsolete flag: ASCII backspace may be used for leftward motion.
-
-`bt'
- String to move the cursor left to the previous hardware tab stop
- column.
-
-`bw'
- Flag: `le' at left margin wraps to end of previous line.
-
-`CC'
- String to change terminal's command character.
-
-`cd'
- String to clear the line the cursor is on, and following lines.
-
-`ce'
- String to clear from the cursor to the end of the line.
-
-`ch'
- String to position the cursor at column C in the same line.
-
-`cl'
- String to clear the entire screen and put cursor at upper left
- corner.
-
-`cm'
- String to position the cursor at line L, column C.
-
-`CM'
- String to position the cursor at line L, column C, relative to
- display memory.
-
-`co'
- Number: width of the screen.
-
-`cr'
- String to move cursor sideways to left margin.
-
-`cs'
- String to set the scroll region.
-
-`cS'
- Alternate form of string to set the scroll region.
-
-`ct'
- String to clear all tab stops.
-
-`cv'
- String to position the cursor at line L in the same column.
-
-`da'
- Flag: data scrolled off top of screen may be scrolled back.
-
-`db'
- Flag: data scrolled off bottom of screen may be scrolled back.
-
-`dB'
- Obsolete number: msec of padding needed for the backspace
- character.
-
-`dc'
- String to delete one character position at the cursor.
-
-`dC'
- Obsolete number: msec of padding needed for the carriage-return
- character.
-
-`DC'
- String to delete N characters starting at the cursor.
-
-`dF'
- Obsolete number: msec of padding needed for the formfeed character.
-
-`dl'
- String to delete the line the cursor is on.
-
-`DL'
- String to delete N lines starting with the cursor's line.
-
-`dm'
- String to enter delete mode.
-
-`dN'
- Obsolete number: msec of padding needed for the newline character.
-
-`do'
- String to move the cursor vertically down one line.
-
-`DO'
- String to move cursor vertically down N lines.
-
-`ds'
- String to disable the display of the status line.
-
-`dT'
- Obsolete number: msec of padding needed for the tab character.
-
-`ec'
- String of commands to clear N characters at cursor.
-
-`ed'
- String to exit delete mode.
-
-`ei'
- String to leave insert mode.
-
-`eo'
- Flag: output of a space can erase an overstrike.
-
-`es'
- Flag: other display commands work while writing the status line.
-
-`ff'
- String to advance to the next page, for a hardcopy terminal.
-
-`fs'
- String to move the cursor back from the status line to its
- previous position (outside the status line).
-
-`gn'
- Flag: this terminal type is generic, not real.
-
-`hc'
- Flag: hardcopy terminal.
-
-`hd'
- String to move the cursor down half a line.
-
-`ho'
- String to position cursor at upper left corner.
-
-`hs'
- Flag: the terminal has a status line.
-
-`hu'
- String to move the cursor up half a line.
-
-`hz'
- Flag: terminal cannot accept `~' as output.
-
-`i1'
- String to initialize the terminal for each login session.
-
-`i3'
- String to initialize the terminal for each login session.
-
-`ic'
- String to insert one character position at the cursor.
-
-`IC'
- String to insert N character positions at the cursor.
-
-`if'
- String naming a file of commands to initialize the terminal.
-
-`im'
- String to enter insert mode.
-
-`in'
- Flag: outputting a space is different from moving over empty
- positions.
-
-`ip'
- String to output following an inserted character in insert mode.
-
-`is'
- String to initialize the terminal for each login session.
-
-`it'
- Number: initial spacing between hardware tab stop columns.
-
-`k0'
- String of input sent by function key 0 or 10.
-
-`k1 ... k9'
- Strings of input sent by function keys 1 through 9.
-
-`K1 ... K5'
- Strings sent by the five other keys in 3-by-3 array with arrows.
-
-`ka'
- String of input sent by the "clear all tabs" key.
-
-`kA'
- String of input sent by the "insert line" key.
-
-`kb'
- String of input sent by the "backspace" key.
-
-`kC'
- String of input sent by the "clear screen" key.
-
-`kd'
- String of input sent by typing the down-arrow key.
-
-`kD'
- String of input sent by the "delete character" key.
-
-`ke'
- String to make the function keys work locally.
-
-`kE'
- String of input sent by the "clear to end of line" key.
-
-`kF'
- String of input sent by the "scroll forward" key.
-
-`kh'
- String of input sent by typing the "home-position" key.
-
-`kH'
- String of input sent by the "home down" key.
-
-`kI'
- String of input sent by the "insert character" or "enter insert
- mode" key.
-
-`kl'
- String of input sent by typing the left-arrow key.
-
-`kL'
- String of input sent by the "delete line" key.
-
-`km'
- Flag: the terminal has a Meta key.
-
-`kM'
- String of input sent by the "exit insert mode" key.
-
-`kn'
- Numeric value, the number of numbered function keys.
-
-`kN'
- String of input sent by the "next page" key.
-
-`ko'
- Very obsolete string listing the terminal's named function keys.
-
-`kP'
- String of input sent by the "previous page" key.
-
-`kr'
- String of input sent by typing the right-arrow key.
-
-`kR'
- String of input sent by the "scroll reverse" key.
-
-`ks'
- String to make the function keys transmit.
-
-`kS'
- String of input sent by the "clear to end of screen" key.
-
-`kt'
- String of input sent by the "clear tab stop this column" key.
-
-`kT'
- String of input sent by the "set tab stop in this column" key.
-
-`ku'
- String of input sent by typing the up-arrow key.
-
-`l0'
- String on keyboard labelling function key 0 or 10.
-
-`l1 ... l9'
- Strings on keyboard labelling function keys 1 through 9.
-
-`le'
- String to move the cursor left one column.
-
-`LE'
- String to move cursor left N columns.
-
-`li'
- Number: height of the screen.
-
-`ll'
- String to position cursor at lower left corner.
-
-`lm'
- Number: lines of display memory.
-
-`LP'
- Flag: writing to last column of last line will not scroll.
-
-`mb'
- String to enter blinking mode.
-
-`md'
- String to enter double-bright mode.
-
-`me'
- String to turn off all appearance modes
-
-`mh'
- String to enter half-bright mode.
-
-`mi'
- Flag: cursor motion in insert mode is safe.
-
-`mk'
- String to enter invisible mode.
-
-`mm'
- String to enable the functioning of the Meta key.
-
-`mo'
- String to disable the functioning of the Meta key.
-
-`mp'
- String to enter protected mode.
-
-`mr'
- String to enter reverse-video mode.
-
-`ms'
- Flag: cursor motion in standout mode is safe.
-
-`nc'
- Obsolete flag: do not use ASCII carriage-return on this terminal.
-
-`nd'
- String to move the cursor right one column.
-
-`NF'
- Flag: do not use XON/XOFF flow control.
-
-`nl'
- Obsolete alternative name for the `do' and `sf' capabilities.
-
-`ns'
- Flag: the terminal does not normally scroll for sequential output.
-
-`nw'
- String to move to start of next line, possibly clearing rest of
- old line.
-
-`os'
- Flag: terminal can overstrike.
-
-`pb'
- Number: the lowest baud rate at which padding is actually needed.
-
-`pc'
- String containing character for padding.
-
-`pf'
- String to terminate redirection of output to the printer.
-
-`po'
- String to redirect further output to the printer.
-
-`pO'
- String to redirect N characters ofoutput to the printer.
-
-`ps'
- String to print the screen on the attached printer.
-
-`rc'
- String to move to last saved cursor position.
-
-`RI'
- String to move cursor right N columns.
-
-`rp'
- String to output character C repeated N times.
-
-`rs'
- String to reset the terminal from any strange modes.
-
-`sa'
- String to turn on an arbitrary combination of appearance modes.
-
-`sc'
- String to save the current cursor position.
-
-`se'
- String to leave standout mode.
-
-`sf'
- String to scroll the screen one line up.
-
-`SF'
- String to scroll the screen N lines up.
-
-`sg'
- Number: width of magic standout cookie. Absent if magic cookies
- are not used.
-
-`so'
- String to enter standout mode.
-
-`sr'
- String to scroll the screen one line down.
-
-`SR'
- String to scroll the screen N line down.
-
-`st'
- String to set tab stop at current cursor column on all lines.
- programs.
-
-`ta'
- String to move the cursor right to the next hardware tab stop
- column.
-
-`te'
- String to return terminal to settings for sequential output.
-
-`ti'
- String to initialize terminal for random cursor motion.
-
-`ts'
- String to move the terminal cursor into the status line.
-
-`uc'
- String to underline one character and move cursor right.
-
-`ue'
- String to turn off underline mode
-
-`ug'
- Number: width of underlining magic cookie. Absent if underlining
- doesn't use magic cookies.
-
-`ul'
- Flag: underline by overstriking with an underscore.
-
-`up'
- String to move the cursor vertically up one line.
-
-`UP'
- String to move cursor vertically up N lines.
-
-`us'
- String to turn on underline mode
-
-`vb'
- String to make the screen flash.
-
-`ve'
- String to return the cursor to normal.
-
-`vi'
- String to make the cursor invisible.
-
-`vs'
- String to enhance the cursor.
-
-`wi'
- String to set the terminal output screen window.
-
-`ws'
- Number: the width of the status line.
-
-`xb'
- Flag: superbee terminal.
-
-`xn'
- Flag: cursor wraps in a strange way.
-
-`xs'
- Flag: clearing a line is the only way to clear the appearance
- modes of positions in that line (or, only way to remove magic
- cookies on that line).
-
-`xt'
- Flag: Teleray 1061; several strange characteristics.
-
-
-File: termcap.info, Node: Var Index, Next: Cap Index, Prev: Summary, Up: Top
-
-Variable and Function Index
-***************************
-
-* Menu:
-
-* BC: tgoto.
-* ospeed: Output Padding.
-* PC: Output Padding.
-* tgetent: Find.
-* tgetflag: Interrogate.
-* tgetnum: Interrogate.
-* tgetstr: Interrogate.
-* tgoto: tgoto.
-* tparam: tparam.
-* tputs: Output Padding.
-* UP: tgoto.
-