BSD 4_1_snap development
[unix-history] / usr / doc / curses / appen.A.tbl
CommitLineData
d2a97fb1
KA
1.ds f. appen.A
2.ie t .he ''\fBAppendix A\fR''
3.el .he ''\fIAppendix A\fR''
4.bp
5.(x
6.sp 2
7.in 0
8.bi Appendixes
9.sp
10.b "Appendix A"
11.)x
12.nr * 1
13.sh 1 "Capabilities from termcap" 1
14.sh 2 Disclaimer
15.pp
16The description of terminals is a difficult business,
17and we only attempt to summarize the capabilities here:
18for a full description see the paper describing termcap.
19.sh 2 Overview
20.pp
21Capabilities from termcap are of three kinds:
22string valued options,
23numeric valued options,
24and boolean options.
25The string valued options are the most complicated,
26since they may include padding information,
27which we describe now.
28.pp
29Intelligent terminals often require padding on intelligent operations
30at high (and sometimes even low) speed.
31This is specified by a number before the string in the capability,
32and has meaning for the capabilities which have a
33.b P
34at the front of their comment.
35This normally is a number of milliseconds to pad the operation.
36In the current system which has no true programmable delays,
37we do this by sending a sequence of pad characters
38(normally nulls, but can be changed
39(specified by
40.i PC )).
41In some cases, the pad is better computed as some number of milliseconds
42times the number of affected lines
43(to the bottom of the screen usually,
44except when terminals have insert modes which will shift several lines.)
45This is specified as, e.g.,
46.b 12* .
47before the capability,
48to say 12 milliseconds per affected whatever
49(currently always line).
50Capabilities where this makes sense say
51.b P* .
52.sp
53.sh 2 "Variables Set By setterm()"
54.TS H
55.if \n+(b.=1 .nr d. \n(.c-\n(c.-1
56.de 35
57.ps \n(.s
58.vs \n(.vu
59.in \n(.iu
60.if \n(.u .fi
61.if \n(.j .ad
62.if \n(.j=0 .na
63..
64.nf
65.nr #~ 0
66.if n .nr #~ 0.6n
67.ds #d .d
68.if \(ts\n(.z\(ts\(ts .ds #d nl
69.fc
70.nr 33 \n(.s
71.rm 80 81 82 83
72.nr 80 0
73.nr 38 \w\ 2Type\ 2
74.if \n(80<\n(38 .nr 80 \n(38
75.nr 38 \w\ 2char *\ 2
76.if \n(80<\n(38 .nr 80 \n(38
77.nr 38 \w\ 2bool\ 2
78.if \n(80<\n(38 .nr 80 \n(38
79.nr 38 \w\ 2char *\ 2
80.if \n(80<\n(38 .nr 80 \n(38
81.nr 38 \w\ 2bool\ 2
82.if \n(80<\n(38 .nr 80 \n(38
83.nr 38 \w\ 2char *\ 2
84.if \n(80<\n(38 .nr 80 \n(38
85.nr 38 \w\ 2bool\ 2
86.if \n(80<\n(38 .nr 80 \n(38
87.nr 38 \w\ 2char *\ 2
88.if \n(80<\n(38 .nr 80 \n(38
89.nr 38 \w\ 2char *\ 2
90.if \n(80<\n(38 .nr 80 \n(38
91.nr 38 \w\ 2char *\ 2
92.if \n(80<\n(38 .nr 80 \n(38
93.nr 38 \w\ 2char *\ 2
94.if \n(80<\n(38 .nr 80 \n(38
95.nr 38 \w\ 2char *\ 2
96.if \n(80<\n(38 .nr 80 \n(38
97.nr 38 \w\ 2char *\ 2
98.if \n(80<\n(38 .nr 80 \n(38
99.nr 38 \w\ 2char *\ 2
100.if \n(80<\n(38 .nr 80 \n(38
101.nr 38 \w\ 2char *\ 2
102.if \n(80<\n(38 .nr 80 \n(38
103.nr 38 \w\ 2char *\ 2
104.if \n(80<\n(38 .nr 80 \n(38
105.nr 38 \w\ 2bool\ 2
106.if \n(80<\n(38 .nr 80 \n(38
107.nr 38 \w\ 2char *\ 2
108.if \n(80<\n(38 .nr 80 \n(38
109.nr 38 \w\ 2char *\ 2
110.if \n(80<\n(38 .nr 80 \n(38
111.nr 38 \w\ 2bool\ 2
112.if \n(80<\n(38 .nr 80 \n(38
113.nr 38 \w\ 2char *\ 2
114.if \n(80<\n(38 .nr 80 \n(38
115.nr 38 \w\ 2bool\ 2
116.if \n(80<\n(38 .nr 80 \n(38
117.nr 38 \w\ 2char *\ 2
118.if \n(80<\n(38 .nr 80 \n(38
119.nr 38 \w\ 2char *\ 2
120.if \n(80<\n(38 .nr 80 \n(38
121.nr 38 \w\ 2char *\ 2
122.if \n(80<\n(38 .nr 80 \n(38
123.nr 38 \w\ 2char *\ 2
124.if \n(80<\n(38 .nr 80 \n(38
125.nr 38 \w\ 2bool\ 2
126.if \n(80<\n(38 .nr 80 \n(38
127.nr 38 \w\ 2bool\ 2
128.if \n(80<\n(38 .nr 80 \n(38
129.nr 38 \w\ 2char *\ 2
130.if \n(80<\n(38 .nr 80 \n(38
131.nr 38 \w\ 2bool\ 2
132.if \n(80<\n(38 .nr 80 \n(38
133.nr 38 \w\ 2char\ 2
134.if \n(80<\n(38 .nr 80 \n(38
135.nr 38 \w\ 2char *\ 2
136.if \n(80<\n(38 .nr 80 \n(38
137.nr 38 \w\ 2char *\ 2
138.if \n(80<\n(38 .nr 80 \n(38
139.nr 38 \w\ 2char *\ 2
140.if \n(80<\n(38 .nr 80 \n(38
141.nr 38 \w\ 2char *\ 2
142.if \n(80<\n(38 .nr 80 \n(38
143.nr 38 \w\ 2char *\ 2
144.if \n(80<\n(38 .nr 80 \n(38
145.nr 38 \w\ 2char *\ 2
146.if \n(80<\n(38 .nr 80 \n(38
147.nr 38 \w\ 2char *\ 2
148.if \n(80<\n(38 .nr 80 \n(38
149.nr 38 \w\ 2char *\ 2
150.if \n(80<\n(38 .nr 80 \n(38
151.nr 38 \w\ 2char *\ 2
152.if \n(80<\n(38 .nr 80 \n(38
153.nr 38 \w\ 2bool\ 2
154.if \n(80<\n(38 .nr 80 \n(38
155.nr 38 \w\ 2char *\ 2
156.if \n(80<\n(38 .nr 80 \n(38
157.nr 38 \w\ 2char *\ 2
158.if \n(80<\n(38 .nr 80 \n(38
159.nr 38 \w\ 2char *\ 2
160.if \n(80<\n(38 .nr 80 \n(38
161.nr 38 \w\ 2char *\ 2
162.if \n(80<\n(38 .nr 80 \n(38
163.nr 38 \w\ 2char *\ 2
164.if \n(80<\n(38 .nr 80 \n(38
165.nr 38 \w\ 2bool\ 2
166.if \n(80<\n(38 .nr 80 \n(38
167.80
168.rm 80
169.nr 81 0
170.nr 38 \w\ 2Name\ 2
171.if \n(81<\n(38 .nr 81 \n(38
172.nr 38 \w\ 2AL\ 2
173.if \n(81<\n(38 .nr 81 \n(38
174.nr 38 \w\ 2AM\ 2
175.if \n(81<\n(38 .nr 81 \n(38
176.nr 38 \w\ 2BC\ 2
177.if \n(81<\n(38 .nr 81 \n(38
178.nr 38 \w\ 2BS\ 2
179.if \n(81<\n(38 .nr 81 \n(38
180.nr 38 \w\ 2BT\ 2
181.if \n(81<\n(38 .nr 81 \n(38
182.nr 38 \w\ 2CA\ 2
183.if \n(81<\n(38 .nr 81 \n(38
184.nr 38 \w\ 2CD\ 2
185.if \n(81<\n(38 .nr 81 \n(38
186.nr 38 \w\ 2CE\ 2
187.if \n(81<\n(38 .nr 81 \n(38
188.nr 38 \w\ 2CL\ 2
189.if \n(81<\n(38 .nr 81 \n(38
190.nr 38 \w\ 2CM\ 2
191.if \n(81<\n(38 .nr 81 \n(38
192.nr 38 \w\ 2DC\ 2
193.if \n(81<\n(38 .nr 81 \n(38
194.nr 38 \w\ 2DL\ 2
195.if \n(81<\n(38 .nr 81 \n(38
196.nr 38 \w\ 2DM\ 2
197.if \n(81<\n(38 .nr 81 \n(38
198.nr 38 \w\ 2DO\ 2
199.if \n(81<\n(38 .nr 81 \n(38
200.nr 38 \w\ 2ED\ 2
201.if \n(81<\n(38 .nr 81 \n(38
202.nr 38 \w\ 2EO\ 2
203.if \n(81<\n(38 .nr 81 \n(38
204.nr 38 \w\ 2EI\ 2
205.if \n(81<\n(38 .nr 81 \n(38
206.nr 38 \w\ 2HO\ 2
207.if \n(81<\n(38 .nr 81 \n(38
208.nr 38 \w\ 2HZ\ 2
209.if \n(81<\n(38 .nr 81 \n(38
210.nr 38 \w\ 2IC\ 2
211.if \n(81<\n(38 .nr 81 \n(38
212.nr 38 \w\ 2IN\ 2
213.if \n(81<\n(38 .nr 81 \n(38
214.nr 38 \w\ 2IM\ 2
215.if \n(81<\n(38 .nr 81 \n(38
216.nr 38 \w\ 2IP\ 2
217.if \n(81<\n(38 .nr 81 \n(38
218.nr 38 \w\ 2LL\ 2
219.if \n(81<\n(38 .nr 81 \n(38
220.nr 38 \w\ 2MA\ 2
221.if \n(81<\n(38 .nr 81 \n(38
222.nr 38 \w\ 2MI\ 2
223.if \n(81<\n(38 .nr 81 \n(38
224.nr 38 \w\ 2NC\ 2
225.if \n(81<\n(38 .nr 81 \n(38
226.nr 38 \w\ 2ND\ 2
227.if \n(81<\n(38 .nr 81 \n(38
228.nr 38 \w\ 2OS\ 2
229.if \n(81<\n(38 .nr 81 \n(38
230.nr 38 \w\ 2PC\ 2
231.if \n(81<\n(38 .nr 81 \n(38
232.nr 38 \w\ 2SE\ 2
233.if \n(81<\n(38 .nr 81 \n(38
234.nr 38 \w\ 2SF\ 2
235.if \n(81<\n(38 .nr 81 \n(38
236.nr 38 \w\ 2SO\ 2
237.if \n(81<\n(38 .nr 81 \n(38
238.nr 38 \w\ 2SR\ 2
239.if \n(81<\n(38 .nr 81 \n(38
240.nr 38 \w\ 2TA\ 2
241.if \n(81<\n(38 .nr 81 \n(38
242.nr 38 \w\ 2TE\ 2
243.if \n(81<\n(38 .nr 81 \n(38
244.nr 38 \w\ 2TI\ 2
245.if \n(81<\n(38 .nr 81 \n(38
246.nr 38 \w\ 2UC\ 2
247.if \n(81<\n(38 .nr 81 \n(38
248.nr 38 \w\ 2UE\ 2
249.if \n(81<\n(38 .nr 81 \n(38
250.nr 38 \w\ 2UL\ 2
251.if \n(81<\n(38 .nr 81 \n(38
252.nr 38 \w\ 2UP\ 2
253.if \n(81<\n(38 .nr 81 \n(38
254.nr 38 \w\ 2US\ 2
255.if \n(81<\n(38 .nr 81 \n(38
256.nr 38 \w\ 2VB\ 2
257.if \n(81<\n(38 .nr 81 \n(38
258.nr 38 \w\ 2VE\ 2
259.if \n(81<\n(38 .nr 81 \n(38
260.nr 38 \w\ 2VS\ 2
261.if \n(81<\n(38 .nr 81 \n(38
262.nr 38 \w\ 2XN\ 2
263.if \n(81<\n(38 .nr 81 \n(38
264.81
265.rm 81
266.nr 82 0
267.nr 38 \w\ 2Pad\ 2
268.if \n(82<\n(38 .nr 82 \n(38
269.nr 38 \w\ 2P*\ 2
270.if \n(82<\n(38 .nr 82 \n(38
271.nr 38 \w\ 2P\ 2
272.if \n(82<\n(38 .nr 82 \n(38
273.nr 38 \w\ 2P*\ 2
274.if \n(82<\n(38 .nr 82 \n(38
275.nr 38 \w\ 2P\ 2
276.if \n(82<\n(38 .nr 82 \n(38
277.nr 38 \w\ 2P*\ 2
278.if \n(82<\n(38 .nr 82 \n(38
279.nr 38 \w\ 2P\ 2
280.if \n(82<\n(38 .nr 82 \n(38
281.nr 38 \w\ 2P*\ 2
282.if \n(82<\n(38 .nr 82 \n(38
283.nr 38 \w\ 2P*\ 2
284.if \n(82<\n(38 .nr 82 \n(38
285.nr 38 \w\ 2P\ 2
286.if \n(82<\n(38 .nr 82 \n(38
287.nr 38 \w\ 2P*\ 2
288.if \n(82<\n(38 .nr 82 \n(38
289.nr 38 \w\ 2P\ 2
290.if \n(82<\n(38 .nr 82 \n(38
291.nr 38 \w\ 2P\ 2
292.if \n(82<\n(38 .nr 82 \n(38
293.nr 38 \w\ 2P\ 2
294.if \n(82<\n(38 .nr 82 \n(38
295.82
296.rm 82
297.nr 83 0
298.nr 38 \w\ 2Description\ 2
299.if \n(83<\n(38 .nr 83 \n(38
300.nr 38 \w\ 2Add new blank Line\ 2
301.if \n(83<\n(38 .nr 83 \n(38
302.nr 38 \w\ 2Automatic Margins\ 2
303.if \n(83<\n(38 .nr 83 \n(38
304.nr 38 \w\ 2Back Cursor movement\ 2
305.if \n(83<\n(38 .nr 83 \n(38
306.nr 38 \w\ 2BackSpace works\ 2
307.if \n(83<\n(38 .nr 83 \n(38
308.nr 38 \w\ 2Back Tab\ 2
309.if \n(83<\n(38 .nr 83 \n(38
310.nr 38 \w\ 2Cursor Addressable\ 2
311.if \n(83<\n(38 .nr 83 \n(38
312.nr 38 \w\ 2Clear to end of Display\ 2
313.if \n(83<\n(38 .nr 83 \n(38
314.nr 38 \w\ 2Clear to End of line\ 2
315.if \n(83<\n(38 .nr 83 \n(38
316.nr 38 \w\ 2CLear screen\ 2
317.if \n(83<\n(38 .nr 83 \n(38
318.nr 38 \w\ 2Cursor Motion\ 2
319.if \n(83<\n(38 .nr 83 \n(38
320.nr 38 \w\ 2Delete Character\ 2
321.if \n(83<\n(38 .nr 83 \n(38
322.nr 38 \w\ 2Delete Line sequence\ 2
323.if \n(83<\n(38 .nr 83 \n(38
324.nr 38 \w\ 2Delete Mode (enter)\ 2
325.if \n(83<\n(38 .nr 83 \n(38
326.nr 38 \w\ 2DOwn line sequence\ 2
327.if \n(83<\n(38 .nr 83 \n(38
328.nr 38 \w\ 2End Delete mode\ 2
329.if \n(83<\n(38 .nr 83 \n(38
330.nr 38 \w\ 2can Erase Overstrikes with \' \'\ 2
331.if \n(83<\n(38 .nr 83 \n(38
332.nr 38 \w\ 2End Insert mode\ 2
333.if \n(83<\n(38 .nr 83 \n(38
334.nr 38 \w\ 2HOme cursor\ 2
335.if \n(83<\n(38 .nr 83 \n(38
336.nr 38 \w\ 2HaZeltine ~ braindamage\ 2
337.if \n(83<\n(38 .nr 83 \n(38
338.nr 38 \w\ 2Insert Character\ 2
339.if \n(83<\n(38 .nr 83 \n(38
340.nr 38 \w\ 2Insert-Null blessing\ 2
341.if \n(83<\n(38 .nr 83 \n(38
342.nr 38 \w\ 2enter Insert Mode (IC usually set, too)\ 2
343.if \n(83<\n(38 .nr 83 \n(38
344.nr 38 \w\ 2Pad after char Inserted using IM+IE\ 2
345.if \n(83<\n(38 .nr 83 \n(38
346.nr 38 \w\ 2quick to Last Line, column 0\ 2
347.if \n(83<\n(38 .nr 83 \n(38
348.nr 38 \w\ 2ctrl character MAp for cmd mode\ 2
349.if \n(83<\n(38 .nr 83 \n(38
350.nr 38 \w\ 2can Move in Insert mode\ 2
351.if \n(83<\n(38 .nr 83 \n(38
352.nr 38 \w\ 2No Cr: \er sends \er\en then eats \en\ 2
353.if \n(83<\n(38 .nr 83 \n(38
354.nr 38 \w\ 2Non-Destructive space\ 2
355.if \n(83<\n(38 .nr 83 \n(38
356.nr 38 \w\ 2OverStrike works\ 2
357.if \n(83<\n(38 .nr 83 \n(38
358.nr 38 \w\ 2Pad Character\ 2
359.if \n(83<\n(38 .nr 83 \n(38
360.nr 38 \w\ 2Standout End (may leave space)\ 2
361.if \n(83<\n(38 .nr 83 \n(38
362.nr 38 \w\ 2Scroll Forwards\ 2
363.if \n(83<\n(38 .nr 83 \n(38
364.nr 38 \w\ 2Stand Out begin (may leave space)\ 2
365.if \n(83<\n(38 .nr 83 \n(38
366.nr 38 \w\ 2Scroll in Reverse\ 2
367.if \n(83<\n(38 .nr 83 \n(38
368.nr 38 \w\ 2TAb (not ^I or with padding)\ 2
369.if \n(83<\n(38 .nr 83 \n(38
370.nr 38 \w\ 2Terminal address enable Ending sequence\ 2
371.if \n(83<\n(38 .nr 83 \n(38
372.nr 38 \w\ 2Terminal address enable Initialization\ 2
373.if \n(83<\n(38 .nr 83 \n(38
374.nr 38 \w\ 2Underline a single Character\ 2
375.if \n(83<\n(38 .nr 83 \n(38
376.nr 38 \w\ 2Underline Ending sequence\ 2
377.if \n(83<\n(38 .nr 83 \n(38
378.nr 38 \w\ 2UnderLining works even though !OS\ 2
379.if \n(83<\n(38 .nr 83 \n(38
380.nr 38 \w\ 2UPline\ 2
381.if \n(83<\n(38 .nr 83 \n(38
382.nr 38 \w\ 2Underline Starting sequence\**\ 2
383.if \n(83<\n(38 .nr 83 \n(38
384.nr 38 \w\ 2Visible Bell\ 2
385.if \n(83<\n(38 .nr 83 \n(38
386.nr 38 \w\ 2Visual End sequence\ 2
387.if \n(83<\n(38 .nr 83 \n(38
388.nr 38 \w\ 2Visual Start sequence\ 2
389.if \n(83<\n(38 .nr 83 \n(38
390.nr 38 \w\ 2a Newline gets eaten after wrap\ 2
391.if \n(83<\n(38 .nr 83 \n(38
392.83
393.rm 83
394.nr 38 \w\ 2variables set by \fIsetterm()\fR\ 2-\n(80-3n-\n(81-3n-\n(82-3n-\n(83
395.if \n(38>0 .nr 38 \n(38/3
396.if \n(38<0 .nr 38 0
397.nr 81 +\n(38
398.nr 82 +\n(38
399.nr 83 +\n(38
400.nr 38 1n
401.nr 79 0
402.nr 40 \n(79+(0*\n(38)
403.nr 80 +\n(40
404.nr 41 \n(80+(3*\n(38)
405.nr 81 +\n(41
406.nr 42 \n(81+(3*\n(38)
407.nr 82 +\n(42
408.nr 43 \n(82+(3*\n(38)
409.nr 83 +\n(43
410.nr TW \n(83
411.if t .if (\n(TW+\n(.o)>7.65i .tm Table at line 107 file appen.A is too wide - \n(TW units
412.fc \ 2 \ 3
413.nr #T 0-1
414.nr #a 0-1
415.eo
416.de T#
417.ds #d .d
418.if \(ts\n(.z\(ts\(ts .ds #d nl
419.mk ##
420.nr ## -1v
421.ls 1
422.ls
423..
424.ec
425.ta \n(83u
426.nr 31 \n(.f
427.nr 35 1m
428\&\h'|\n(40u'\ 2\ 3variables set by \fIsetterm()\fR\ 3\ 2
429.ta \n(80u \n(81u \n(82u \n(83u
430.nr 31 \n(.f
431.nr 35 1m
432\&\h'|\n(40u'\ 2\ 3\ 2\h'|\n(41u'\ 2\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2\ 3\ 2
433.ta \n(80u \n(81u \n(82u \n(83u
434.nr 31 \n(.f
435.nr 35 1m
436\&\h'|\n(40u'\ 2Type\ 3\ 2\h'|\n(41u'\ 2Name\ 3\ 2\h'|\n(42u'\ 2Pad\ 3\ 2\h'|\n(43u'\ 2Description\ 3\ 2
437.nr 36 \n(.v
438.vs \n(.vu-\n(.sp
439\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
440.vs \n(36u
441.TH
442.ta \n(80u \n(81u \n(82u \n(83u
443.nr 31 \n(.f
444.nr 35 1m
445\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2AL\ 3\ 2\h'|\n(42u'\ 2P*\ 3\ 2\h'|\n(43u'\ 2Add new blank Line\ 3\ 2
446.ta \n(80u \n(81u \n(82u \n(83u
447.nr 31 \n(.f
448.nr 35 1m
449\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2AM\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Automatic Margins\ 3\ 2
450.ta \n(80u \n(81u \n(82u \n(83u
451.nr 31 \n(.f
452.nr 35 1m
453\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2BC\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Back Cursor movement\ 3\ 2
454.ta \n(80u \n(81u \n(82u \n(83u
455.nr 31 \n(.f
456.nr 35 1m
457\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2BS\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2BackSpace works\ 3\ 2
458.ta \n(80u \n(81u \n(82u \n(83u
459.nr 31 \n(.f
460.nr 35 1m
461\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2BT\ 3\ 2\h'|\n(42u'\ 2P\ 3\ 2\h'|\n(43u'\ 2Back Tab\ 3\ 2
462.ta \n(80u \n(81u \n(82u \n(83u
463.nr 31 \n(.f
464.nr 35 1m
465\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2CA\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Cursor Addressable\ 3\ 2
466.ta \n(80u \n(81u \n(82u \n(83u
467.nr 31 \n(.f
468.nr 35 1m
469\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2CD\ 3\ 2\h'|\n(42u'\ 2P*\ 3\ 2\h'|\n(43u'\ 2Clear to end of Display\ 3\ 2
470.ta \n(80u \n(81u \n(82u \n(83u
471.nr 31 \n(.f
472.nr 35 1m
473\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2CE\ 3\ 2\h'|\n(42u'\ 2P\ 3\ 2\h'|\n(43u'\ 2Clear to End of line\ 3\ 2
474.ta \n(80u \n(81u \n(82u \n(83u
475.nr 31 \n(.f
476.nr 35 1m
477\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2CL\ 3\ 2\h'|\n(42u'\ 2P*\ 3\ 2\h'|\n(43u'\ 2CLear screen\ 3\ 2
478.ta \n(80u \n(81u \n(82u \n(83u
479.nr 31 \n(.f
480.nr 35 1m
481\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2CM\ 3\ 2\h'|\n(42u'\ 2P\ 3\ 2\h'|\n(43u'\ 2Cursor Motion\ 3\ 2
482.ta \n(80u \n(81u \n(82u \n(83u
483.nr 31 \n(.f
484.nr 35 1m
485\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2DC\ 3\ 2\h'|\n(42u'\ 2P*\ 3\ 2\h'|\n(43u'\ 2Delete Character\ 3\ 2
486.ta \n(80u \n(81u \n(82u \n(83u
487.nr 31 \n(.f
488.nr 35 1m
489\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2DL\ 3\ 2\h'|\n(42u'\ 2P*\ 3\ 2\h'|\n(43u'\ 2Delete Line sequence\ 3\ 2
490.ta \n(80u \n(81u \n(82u \n(83u
491.nr 31 \n(.f
492.nr 35 1m
493\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2DM\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Delete Mode (enter)\ 3\ 2
494.ta \n(80u \n(81u \n(82u \n(83u
495.nr 31 \n(.f
496.nr 35 1m
497\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2DO\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2DOwn line sequence\ 3\ 2
498.ta \n(80u \n(81u \n(82u \n(83u
499.nr 31 \n(.f
500.nr 35 1m
501\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2ED\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2End Delete mode\ 3\ 2
502.ta \n(80u \n(81u \n(82u \n(83u
503.nr 31 \n(.f
504.nr 35 1m
505\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2EO\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2can Erase Overstrikes with \' \'\ 3\ 2
506.ta \n(80u \n(81u \n(82u \n(83u
507.nr 31 \n(.f
508.nr 35 1m
509\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2EI\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2End Insert mode\ 3\ 2
510.ta \n(80u \n(81u \n(82u \n(83u
511.nr 31 \n(.f
512.nr 35 1m
513\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2HO\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2HOme cursor\ 3\ 2
514.ta \n(80u \n(81u \n(82u \n(83u
515.nr 31 \n(.f
516.nr 35 1m
517\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2HZ\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2HaZeltine ~ braindamage\ 3\ 2
518.ta \n(80u \n(81u \n(82u \n(83u
519.nr 31 \n(.f
520.nr 35 1m
521\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2IC\ 3\ 2\h'|\n(42u'\ 2P\ 3\ 2\h'|\n(43u'\ 2Insert Character\ 3\ 2
522.ta \n(80u \n(81u \n(82u \n(83u
523.nr 31 \n(.f
524.nr 35 1m
525\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2IN\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Insert-Null blessing\ 3\ 2
526.ta \n(80u \n(81u \n(82u \n(83u
527.nr 31 \n(.f
528.nr 35 1m
529\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2IM\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2enter Insert Mode (IC usually set, too)\ 3\ 2
530.ta \n(80u \n(81u \n(82u \n(83u
531.nr 31 \n(.f
532.nr 35 1m
533\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2IP\ 3\ 2\h'|\n(42u'\ 2P*\ 3\ 2\h'|\n(43u'\ 2Pad after char Inserted using IM+IE\ 3\ 2
534.ta \n(80u \n(81u \n(82u \n(83u
535.nr 31 \n(.f
536.nr 35 1m
537\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2LL\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2quick to Last Line, column 0\ 3\ 2
538.ta \n(80u \n(81u \n(82u \n(83u
539.nr 31 \n(.f
540.nr 35 1m
541\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2MA\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2ctrl character MAp for cmd mode\ 3\ 2
542.ta \n(80u \n(81u \n(82u \n(83u
543.nr 31 \n(.f
544.nr 35 1m
545\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2MI\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2can Move in Insert mode\ 3\ 2
546.ta \n(80u \n(81u \n(82u \n(83u
547.nr 31 \n(.f
548.nr 35 1m
549\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2NC\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2No Cr: \er sends \er\en then eats \en\ 3\ 2
550.ta \n(80u \n(81u \n(82u \n(83u
551.nr 31 \n(.f
552.nr 35 1m
553\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2ND\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Non-Destructive space\ 3\ 2
554.ta \n(80u \n(81u \n(82u \n(83u
555.nr 31 \n(.f
556.nr 35 1m
557\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2OS\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2OverStrike works\ 3\ 2
558.ta \n(80u \n(81u \n(82u \n(83u
559.nr 31 \n(.f
560.nr 35 1m
561\&\h'|\n(40u'\ 2char\ 3\ 2\h'|\n(41u'\ 2PC\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Pad Character\ 3\ 2
562.ta \n(80u \n(81u \n(82u \n(83u
563.nr 31 \n(.f
564.nr 35 1m
565\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2SE\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Standout End (may leave space)\ 3\ 2
566.ta \n(80u \n(81u \n(82u \n(83u
567.nr 31 \n(.f
568.nr 35 1m
569\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2SF\ 3\ 2\h'|\n(42u'\ 2P\ 3\ 2\h'|\n(43u'\ 2Scroll Forwards\ 3\ 2
570.ta \n(80u \n(81u \n(82u \n(83u
571.nr 31 \n(.f
572.nr 35 1m
573\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2SO\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Stand Out begin (may leave space)\ 3\ 2
574.ta \n(80u \n(81u \n(82u \n(83u
575.nr 31 \n(.f
576.nr 35 1m
577\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2SR\ 3\ 2\h'|\n(42u'\ 2P\ 3\ 2\h'|\n(43u'\ 2Scroll in Reverse\ 3\ 2
578.ta \n(80u \n(81u \n(82u \n(83u
579.nr 31 \n(.f
580.nr 35 1m
581\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2TA\ 3\ 2\h'|\n(42u'\ 2P\ 3\ 2\h'|\n(43u'\ 2TAb (not ^I or with padding)\ 3\ 2
582.ta \n(80u \n(81u \n(82u \n(83u
583.nr 31 \n(.f
584.nr 35 1m
585\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2TE\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Terminal address enable Ending sequence\ 3\ 2
586.ta \n(80u \n(81u \n(82u \n(83u
587.nr 31 \n(.f
588.nr 35 1m
589\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2TI\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Terminal address enable Initialization\ 3\ 2
590.ta \n(80u \n(81u \n(82u \n(83u
591.nr 31 \n(.f
592.nr 35 1m
593\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2UC\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Underline a single Character\ 3\ 2
594.ta \n(80u \n(81u \n(82u \n(83u
595.nr 31 \n(.f
596.nr 35 1m
597\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2UE\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Underline Ending sequence\ 3\ 2
598.ta \n(80u \n(81u \n(82u \n(83u
599.nr 31 \n(.f
600.nr 35 1m
601\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2UL\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2UnderLining works even though !OS\ 3\ 2
602.ta \n(80u \n(81u \n(82u \n(83u
603.nr 31 \n(.f
604.nr 35 1m
605\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2UP\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2UPline\ 3\ 2
606.ta \n(80u \n(81u \n(82u \n(83u
607.nr 31 \n(.f
608.nr 35 1m
609\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2US\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Underline Starting sequence\**\ 3\ 2
610.ta \n(80u \n(81u \n(82u \n(83u
611.nr 31 \n(.f
612.nr 35 1m
613\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2VB\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Visible Bell\ 3\ 2
614.ta \n(80u \n(81u \n(82u \n(83u
615.nr 31 \n(.f
616.nr 35 1m
617\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2VE\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Visual End sequence\ 3\ 2
618.ta \n(80u \n(81u \n(82u \n(83u
619.nr 31 \n(.f
620.nr 35 1m
621\&\h'|\n(40u'\ 2char *\ 3\ 2\h'|\n(41u'\ 2VS\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2Visual Start sequence\ 3\ 2
622.ta \n(80u \n(81u \n(82u \n(83u
623.nr 31 \n(.f
624.nr 35 1m
625\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2XN\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2\h'|\n(43u'\ 2a Newline gets eaten after wrap\ 3\ 2
626.fc
627.nr T. 1
628.T# 1
629.35
630.TE
631.if \n-(b.=0 .nr c. \n(.c-\n(d.-54
632.(f
633\**
634US and UE,
635if they do not exist in the termcap entry,
636are copied from SO and SE
637in
638.Fn setterm
639.)f
640Names starting with
641.bi X
642are reserved for severely nauseous glitches
643.sh 2 "Variables Set By gettmode()"
644.TS H
645.if \n+(b.=1 .nr d. \n(.c-\n(c.-1
646.de 35
647.ps \n(.s
648.vs \n(.vu
649.in \n(.iu
650.if \n(.u .fi
651.if \n(.j .ad
652.if \n(.j=0 .na
653..
654.nf
655.nr #~ 0
656.if n .nr #~ 0.6n
657.ds #d .d
658.if \(ts\n(.z\(ts\(ts .ds #d nl
659.fc
660.nr 33 \n(.s
661.rm 80 81 82
662.nr 80 0
663.nr 38 \w\ 2type\ 2
664.if \n(80<\n(38 .nr 80 \n(38
665.nr 38 \w\ 2bool\ 2
666.if \n(80<\n(38 .nr 80 \n(38
667.nr 38 \w\ 2bool\ 2
668.if \n(80<\n(38 .nr 80 \n(38
669.nr 38 \w\ 2bool\ 2
670.if \n(80<\n(38 .nr 80 \n(38
671.80
672.rm 80
673.nr 81 0
674.nr 38 \w\ 2name\ 2
675.if \n(81<\n(38 .nr 81 \n(38
676.nr 38 \w\ 2NONL\ 2
677.if \n(81<\n(38 .nr 81 \n(38
678.nr 38 \w\ 2GT\ 2
679.if \n(81<\n(38 .nr 81 \n(38
680.nr 38 \w\ 2UPPERCASE\ 2
681.if \n(81<\n(38 .nr 81 \n(38
682.81
683.rm 81
684.nr 82 0
685.nr 38 \w\ 2description\ 2
686.if \n(82<\n(38 .nr 82 \n(38
687.nr 38 \w\ 2Term can't hack linefeeds doing a CR\ 2
688.if \n(82<\n(38 .nr 82 \n(38
689.nr 38 \w\ 2Gtty indicates Tabs\ 2
690.if \n(82<\n(38 .nr 82 \n(38
691.nr 38 \w\ 2Terminal generates only uppercase letters\ 2
692.if \n(82<\n(38 .nr 82 \n(38
693.82
694.rm 82
695.nr 38 \w\ 2variables set by \fIgettmode()\fR\ 2-\n(80-3n-\n(81-3n-\n(82
696.if \n(38>0 .nr 38 \n(38/2
697.if \n(38<0 .nr 38 0
698.nr 81 +\n(38
699.nr 82 +\n(38
700.nr 38 1n
701.nr 79 0
702.nr 40 \n(79+(0*\n(38)
703.nr 80 +\n(40
704.nr 41 \n(80+(3*\n(38)
705.nr 81 +\n(41
706.nr 42 \n(81+(3*\n(38)
707.nr 82 +\n(42
708.nr TW \n(82
709.if t .if (\n(TW+\n(.o)>7.65i .tm Table at line 131 file appen.A is too wide - \n(TW units
710.fc \ 2 \ 3
711.nr #T 0-1
712.nr #a 0-1
713.eo
714.de T#
715.ds #d .d
716.if \(ts\n(.z\(ts\(ts .ds #d nl
717.mk ##
718.nr ## -1v
719.ls 1
720.ls
721..
722.ec
723.ta \n(82u
724.nr 31 \n(.f
725.nr 35 1m
726\&\h'|\n(40u'\ 2\ 3variables set by \fIgettmode()\fR\ 3\ 2
727.ta \n(80u \n(81u \n(82u
728.nr 31 \n(.f
729.nr 35 1m
730\&\h'|\n(40u'\ 2\ 3\ 2\h'|\n(41u'\ 2\ 3\ 2\h'|\n(42u'\ 2\ 3\ 2
731.ta \n(80u \n(81u \n(82u
732.nr 31 \n(.f
733.nr 35 1m
734\&\h'|\n(40u'\ 2type\ 3\ 2\h'|\n(41u'\ 2name\ 3\ 2\h'|\n(42u'\ 2description\ 3\ 2
735.nr 36 \n(.v
736.vs \n(.vu-\n(.sp
737\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
738.vs \n(36u
739.TH
740.ta \n(80u \n(81u \n(82u
741.nr 31 \n(.f
742.nr 35 1m
743\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2NONL\ 3\ 2\h'|\n(42u'\ 2Term can't hack linefeeds doing a CR\ 3\ 2
744.ta \n(80u \n(81u \n(82u
745.nr 31 \n(.f
746.nr 35 1m
747\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2GT\ 3\ 2\h'|\n(42u'\ 2Gtty indicates Tabs\ 3\ 2
748.ta \n(80u \n(81u \n(82u
749.nr 31 \n(.f
750.nr 35 1m
751\&\h'|\n(40u'\ 2bool\ 3\ 2\h'|\n(41u'\ 2UPPERCASE\ 3\ 2\h'|\n(42u'\ 2Terminal generates only uppercase letters\ 3\ 2
752.fc
753.nr T. 1
754.T# 1
755.35
756.TE
757.if \n-(b.=0 .nr c. \n(.c-\n(d.-11