BSD 4_3_Reno release
[unix-history] / usr / share / doc / ps1 / 18.curses / appen.A
CommitLineData
ea56bb60
KB
1.\" Copyright (c) 1980 The Regents of the University of California.
2.\" All rights reserved.
1cb79f9c 3.\"
ea56bb60
KB
4.\" Redistribution and use in source and binary forms are permitted
5.\" provided that the above copyright notice and this paragraph are
6.\" duplicated in all such forms and that any documentation,
7.\" advertising materials, and other materials related to such
8.\" distribution and use acknowledge that the software was developed
9.\" by the University of California, Berkeley. The name of the
10.\" University may not be used to endorse or promote products derived
11.\" from this software without specific prior written permission.
12.\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
13.\" IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
14.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
15.\"
1c15e888 16.\" @(#)appen.A 6.2 (Berkeley) 3/17/89
1cb79f9c 17.\"
4e6acb2c
KM
18.ie t .oh '\*(Ln Appendix A''PS1:18-%'
19.eh 'PS1:18-%''\*(Ln Appendix A'
1cb79f9c
KM
20.el .he ''\fIAppendix A\fR''
21.bp
22.(x
23.sp 2
24.in 0
25.bi Appendixes
26.sp
27.b "Appendix A"
28.)x
29.nr * 1
30.sh 1 "Capabilities from termcap" 1
31.sh 2 Disclaimer
32.pp
33The description of terminals is a difficult business,
34and we only attempt to summarize the capabilities here:
4e6acb2c
KM
35for a full description see
36.b termcap (5).
1cb79f9c
KM
37.sh 2 Overview
38.pp
4e6acb2c
KM
39Capabilities from
40.b termcap
41are of three kinds:
1cb79f9c
KM
42string valued options,
43numeric valued options,
44and boolean options.
45The string valued options are the most complicated,
46since they may include padding information,
47which we describe now.
48.pp
49Intelligent terminals often require padding on intelligent operations
50at high (and sometimes even low) speed.
51This is specified by a number before the string in the capability,
52and has meaning for the capabilities which have a
53.b P
54at the front of their comment.
55This normally is a number of milliseconds to pad the operation.
56In the current system which has no true programmable delays,
57we do this by sending a sequence of pad characters
58(normally nulls, but can be changed
59(specified by
60.i PC )).
61In some cases, the pad is better computed as some number of milliseconds
62times the number of affected lines
63(to the bottom of the screen usually,
64except when terminals have insert modes which will shift several lines.)
4e6acb2c
KM
65This is specified as,
66i e.g. ,
1cb79f9c
KM
67.b 12* .
68before the capability,
69to say 12 milliseconds per affected whatever
70(currently always line).
71Capabilities where this makes sense say
72.b P* .
73.sp
74.sh 2 "Variables Set By setterm()"
75.TS H
76c s s s
77l l l l.
78variables set by \fIsetterm()\fR
79
80Type Name Pad Description
81_
82.TH
83char * AL P* Add new blank Line
84bool AM Automatic Margins
85char * BC Back Cursor movement
86bool BS BackSpace works
87char * BT P Back Tab
88bool CA Cursor Addressable
89char * CD P* Clear to end of Display
90char * CE P Clear to End of line
91char * CL P* CLear screen
92char * CM P Cursor Motion
93char * DC P* Delete Character
94char * DL P* Delete Line sequence
95char * DM Delete Mode (enter)
96char * DO DOwn line sequence
97char * ED End Delete mode
98bool EO can Erase Overstrikes with \' \'
99char * EI End Insert mode
100char * HO HOme cursor
101bool HZ HaZeltine ~ braindamage
102char * IC P Insert Character
103bool IN Insert-Null blessing
104char * IM enter Insert Mode (IC usually set, too)
105char * IP P* Pad after char Inserted using IM+IE
106char * LL quick to Last Line, column 0
107char * MA ctrl character MAp for cmd mode
108bool MI can Move in Insert mode
109bool NC No Cr: \er sends \er\en then eats \en
110char * ND Non-Destructive space
111bool OS OverStrike works
112char PC Pad Character
113char * SE Standout End (may leave space)
114char * SF P Scroll Forwards
115char * SO Stand Out begin (may leave space)
116char * SR P Scroll in Reverse
117char * TA P TAb (not ^I or with padding)
118char * TE Terminal address enable Ending sequence
119char * TI Terminal address enable Initialization
120char * UC Underline a single Character
121char * UE Underline Ending sequence
122bool UL UnderLining works even though !OS
123char * UP UPline
4e6acb2c 124char * US Underline Starting sequence
1cb79f9c
KM
125char * VB Visible Bell
126char * VE Visual End sequence
127char * VS Visual Start sequence
128bool XN a Newline gets eaten after wrap
129.TE
1cb79f9c
KM
130Names starting with
131.bi X
132are reserved for severely nauseous glitches
4e6acb2c
KM
133.pp
134For purposes of
135.Fn standout ,
136if
137.Fn SG
138is not 0,
139.Fn SO
140is set to
141.Fn NULL ,
142and if
143.Fn UG
144is not
145.Fn 0 ,
146.Fn US
147is set to
148.Fn NULL .
149If, after this,
150.Fn SO
151is
152.Fn NULL ,
153and
154.Fn US
155is not,
156.Fn SO
157is set to be
158.Fn US ,
159and
160.Fn SE
161is set to be
162.Fn UE .
1cb79f9c
KM
163.sh 2 "Variables Set By gettmode()"
164.TS H
165c s s
166l l l.
167variables set by \fIgettmode()\fR
168
169type name description
170_
171.TH
172bool NONL Term can't hack linefeeds doing a CR
173bool GT Gtty indicates Tabs
174bool UPPERCASE Terminal generates only uppercase letters
175.TE