Commit | Line | Data |
---|---|---|
58633f46 KA |
1 | .ie t .he ''\fBAppendix A\fR'' |
2 | .el .he ''\fIAppendix A\fR'' | |
3 | .bp | |
4 | .(x | |
5 | .sp 2 | |
6 | .in 0 | |
7 | .bi Appendixes | |
8 | .sp | |
9 | .b "Appendix A" | |
10 | .)x | |
11 | .nr * 1 | |
12 | .sh 1 "Capabilities from termcap" 1 | |
13 | .sh 2 Disclaimer | |
14 | .pp | |
15 | The description of terminals is a difficult business, | |
16 | and we only attempt to summarize the capabilities here: | |
17 | for a full description see the paper describing termcap. | |
18 | .sh 2 Overview | |
19 | .pp | |
20 | Capabilities from termcap are of three kinds: | |
21 | string valued options, | |
22 | numeric valued options, | |
23 | and boolean options. | |
24 | The string valued options are the most complicated, | |
25 | since they may include padding information, | |
26 | which we describe now. | |
27 | .pp | |
28 | Intelligent terminals often require padding on intelligent operations | |
29 | at high (and sometimes even low) speed. | |
30 | This is specified by a number before the string in the capability, | |
31 | and has meaning for the capabilities which have a | |
32 | .b P | |
33 | at the front of their comment. | |
34 | This normally is a number of milliseconds to pad the operation. | |
35 | In the current system which has no true programmable delays, | |
36 | we do this by sending a sequence of pad characters | |
37 | (normally nulls, but can be changed | |
38 | (specified by | |
39 | .i PC )). | |
40 | In some cases, the pad is better computed as some number of milliseconds | |
41 | times the number of affected lines | |
42 | (to the bottom of the screen usually, | |
43 | except when terminals have insert modes which will shift several lines.) | |
44 | This is specified as, e.g., | |
45 | .b 12* . | |
46 | before the capability, | |
47 | to say 12 milliseconds per affected whatever | |
48 | (currently always line). | |
49 | Capabilities where this makes sense say | |
50 | .b P* . | |
51 | .sp | |
52 | .sh 2 "Variables Set By setterm()" | |
53 | .TS H | |
54 | c s s s | |
55 | l l l l. | |
56 | variables set by \fIsetterm()\fR | |
57 | ||
58 | Type Name Pad Description | |
59 | _ | |
60 | .TH | |
61 | char * AL P* Add new blank Line | |
62 | bool AM Automatic Margins | |
63 | char * BC Back Cursor movement | |
64 | bool BS BackSpace works | |
65 | char * BT P Back Tab | |
66 | bool CA Cursor Addressable | |
67 | char * CD P* Clear to end of Display | |
68 | char * CE P Clear to End of line | |
69 | char * CL P* CLear screen | |
70 | char * CM P Cursor Motion | |
71 | char * DC P* Delete Character | |
72 | char * DL P* Delete Line sequence | |
73 | char * DM Delete Mode (enter) | |
74 | char * DO DOwn line sequence | |
75 | char * ED End Delete mode | |
76 | bool EO can Erase Overstrikes with \' \' | |
77 | char * EI End Insert mode | |
78 | char * HO HOme cursor | |
79 | bool HZ HaZeltine ~ braindamage | |
80 | char * IC P Insert Character | |
81 | bool IN Insert-Null blessing | |
82 | char * IM enter Insert Mode (IC usually set, too) | |
83 | char * IP P* Pad after char Inserted using IM+IE | |
84 | char * LL quick to Last Line, column 0 | |
85 | char * MA ctrl character MAp for cmd mode | |
86 | bool MI can Move in Insert mode | |
87 | bool NC No Cr: \er sends \er\en then eats \en | |
88 | char * ND Non-Destructive space | |
89 | bool OS OverStrike works | |
90 | char PC Pad Character | |
91 | char * SE Standout End (may leave space) | |
92 | char * SF P Scroll Forwards | |
93 | char * SO Stand Out begin (may leave space) | |
94 | char * SR P Scroll in Reverse | |
95 | char * TA P TAb (not ^I or with padding) | |
96 | char * TE Terminal address enable Ending sequence | |
97 | char * TI Terminal address enable Initialization | |
98 | char * UC Underline a single Character | |
99 | char * UE Underline Ending sequence | |
100 | bool UL UnderLining works even though !OS | |
101 | char * UP UPline | |
102 | char * US Underline Starting sequence\** | |
103 | char * VB Visible Bell | |
104 | char * VE Visual End sequence | |
105 | char * VS Visual Start sequence | |
106 | bool XN a Newline gets eaten after wrap | |
107 | .TE | |
108 | .(f | |
109 | \** | |
110 | US and UE, | |
111 | if they do not exist in the termcap entry, | |
112 | are copied from SO and SE | |
113 | in | |
114 | .Fn setterm | |
115 | .)f | |
116 | Names starting with | |
117 | .bi X | |
118 | are reserved for severely nauseous glitches | |
119 | .sh 2 "Variables Set By gettmode()" | |
120 | .TS H | |
121 | c s s | |
122 | l l l. | |
123 | variables set by \fIgettmode()\fR | |
124 | ||
125 | type name description | |
126 | _ | |
127 | .TH | |
128 | bool NONL Term can't hack linefeeds doing a CR | |
129 | bool GT Gtty indicates Tabs | |
130 | bool UPPERCASE Terminal generates only uppercase letters | |
131 | .TE |