HP-UX Reference (11i v1 00/12) - 4 File Formats (vol 8)

__________________________________________________________________________________________________________________________________________________________________________________________________
__________________________________________________________________________________________________________________________________________________________________________________________________
STANDARD Printed by: Nora Chuang [nchuang] STANDARD
/build/1111/BRICK/man4/!!!intro.4
________________________________________________________________
___ ___
t
terminfo(4) terminfo(4)
(ENHANCED CURSES)
line or the cursor is addressed. Programs using standout mode should exit standout mode before moving
the cursor or sending a newline, unless the msgr capability, asserting that it is safe to move in standout
mode, is present.
If the terminal has a way of flashing the screen to indicate an error quietly (a bell replacement), then this
can be given as flash; it must not move the cursor. A good flash can be done by changing the screen into
reverse video, pad for 200 ms, then return the screen to normal video.
If the cursor needs to be made more visible than normal when it is not on the bottom line (to make, for
example, a nonblinking underline into an easier to find block or blinking underline) give this sequence as
cvvis. The boolean chts should also be given. If there is a way to make the cursor completely invisible,
give that as civis. The capability cnorm should be given, which undoes the effects of either of these
modes.
If your terminal generates underlined characters by using the underline character (with no special
sequences needed) even though it does not otherwise overstrike characters, then specify the capability ul.
For devices on which a character overstriking another leaves both characters on the screen, specify the
capability os. If overstrikes are erasable with a blank, then this should be indicated by specifying eo.
If there is a sequence to set arbitrary combinations of modes, this should be given as sgr (set attributes),
taking nine arguments. Each argument is either 0 or nonzero, as the corresponding attribute is on or off.
The nine arguments are, in order: standout, underline, reverse, blink, dim, bold, blank, protect, alternate
character set. Not all modes need to be supported by sgr; only those for which corresponding separate
attribute commands exist should be supported. For example, let’s assume that the terminal in question
needs the following escape sequences to turn on various modes.
tparm()
Argument Attribute Escape Sequence
none \E[0m
p1 standout \E[0;4;7m
p2 underline \E[0;3m
p3 reverse \E[0;4m
p4 blink \E[0;5m
p5 dim \E[0;7m
p6 bold \E[0;3;4m
p7 invis \E[0;8m
p8 protect not available
p9 altcharset ˆO (off) ˆN (on)
Note that each escape sequence requires a 0 to turn off other modes before turning on its own mode. Also
note that, as suggested above, standout is set up to be the combination of reverse and dim. Also, because
this terminal has no bold mode, bold is set up as the combination of reverse and underline. In addition, to
allow combinations, such as underline+blink, the sequence to use would be \E[0;3;5m. The terminal
doesn’t have protect mode, either, but that cannot be simulated in any way, so p8 is ignored. The altchar-
set mode is different in that it is either ˆO or ˆN, depending on whether it is off or on. If all modes were to
be turned on, the sequence would be:
\E[0;3;4;5;7;8mˆN
Now look at when different sequences are output. For example, ;3 is output when either p2 or p6 is
true, that is, if either underline or bold modes are turned on. Writing out the above sequences, along with
their dependencies, gives the following:
Sequence When to Output terminfo Translation
\E[0 always \E[0
;3 if p2 or p6 %?%p2%p6%|%t;3%;
;4 if p1 or p3 or p6 %?%p1%p3%|%p6%|%t;4%;
;5 if p4 %?%p4%t;5%;
;7 if p1 or p5 %?%p1%p5%|%t;7%;
;8 if p7 %?%p7%t;8%;
m always m
^N or ˆO if p9, ˆN; else ˆO %?%p9%tˆN%eˆO%;
Section 4340 18 HP-UX Release 11i: December 2000
___
___