Use accessors for setting adjustment
[vte.git] / doc / ctlseqs.ms
1 .\"#! troff -ms $1              -*- Nroff -*-
2 .\" "Xterm Control Sequences" document
3 .\" $Xorg: ctlseqs.ms,v 1.3 2000/08/17 19:42:51 cpqbld Exp $
4 .\"
5 .\"
6 .\"
7 .\"
8 .\" $XFree86: xc/doc/specs/xterm/ctlseqs.ms,v 3.43 2001/03/29 22:48:02 dickey Exp $
9 .\"
10 .\"
11 .\" Copyright 1996,1997,1998,1999,2000 by Thomas E. Dickey
12 .\"
13 .\"                         All Rights Reserved
14 .\"
15 .\" Permission is hereby granted, free of charge, to any person obtaining a
16 .\" copy of this software and associated documentation files (the
17 .\" "Software"), to deal in the Software without restriction, including
18 .\" without limitation the rights to use, copy, modify, merge, publish,
19 .\" distribute, sublicense, and/or sell copies of the Software, and to
20 .\" permit persons to whom the Software is furnished to do so, subject to
21 .\" the following conditions:
22 .\"
23 .\" The above copyright notice and this permission notice shall be included
24 .\" in all copies or substantial portions of the Software.
25 .\"
26 .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
27 .\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
28 .\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
29 .\" IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
30 .\" CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
31 .\" TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
32 .\" SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
33 .\"
34 .\" Except as contained in this notice, the name(s) of the above copyright
35 .\" holders shall not be used in advertising or otherwise to promote the
36 .\" sale, use or other dealings in this Software without prior written
37 .\" authorization.
38 .\"
39 .\"
40 .\" Copyright 1991, 1994 X Consortium
41 .\"
42 .\" Permission is hereby granted, free of charge, to any person obtaining
43 .\" a copy of this software and associated documentation files (the
44 .\" "Software"), to deal in the Software without restriction, including
45 .\" without limitation the rights to use, copy, modify, merge, publish,
46 .\" distribute, sublicense, and/or sell copies of the Software, and to
47 .\" permit persons to whom the Software is furnished to do so, subject to
48 .\" the following conditions:
49 .\"
50 .\" The above copyright notice and this permission notice shall be
51 .\" included in all copies or substantial portions of the Software.
52 .\"
53 .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
54 .\" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
55 .\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
56 .\" IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR
57 .\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
58 .\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
59 .\" OTHER DEALINGS IN THE SOFTWARE.
60 .\"
61 .\" Except as contained in this notice, the name of the X Consortium shall
62 .\" not be used in advertising or otherwise to promote the sale, use or
63 .\" other dealings in this Software without prior written authorization
64 .\" from the X Consortium.
65 .\"
66 .\" X Window System is a trademark of X Consortium, Inc.
67 .\"
68 .\" Originally written by Edward Moy, University of California,
69 .\" Berkeley, edmoy@violet.berkeley.edu, for the X.V10R4 xterm.
70 .\" The X Consortium staff has since updated it for X11.
71 .\" Updated by Thomas E. Dickey for XFree86 3.2 - XFree86 4.0
72 .\"
73 .\" Run this file through troff and use the -ms macro package.
74 .\"
75 .if n .pl 9999v         \" no page breaks in nroff
76 .ND
77 .de St
78 .sp
79 .nr PD 0
80 .nr PI 1.5i
81 .nr VS 16
82 ..
83 .de Ed
84 .nr PD .3v
85 .nr VS 12
86 ..
87 .ds CH \" as nothing
88 .ds LH Xterm Control Sequences
89 .nr s 6*\n(PS/10
90 .ds L \s\nsBEL\s0
91 .ds E \s\nsESC\s0
92 .ds T \s\nsTAB\s0
93 .ds X \s\nsETX\s0
94 .ds N \s\nsENQ\s0
95 .ds e \s\nsETB\s0
96 .ds C \s\nsCAN\s0
97 .ds S \s\nsSUB\s0
98 .\" space between chars
99 .ie t .ds s \|
100 .el .ds s " \"
101 .nr [W \w'\*L'u
102 .nr w \w'\*E'u
103 .if \nw>\n([W .nr [W \nw
104 .nr w \w'\*T'u
105 .if \nw>\n([W .nr [W \nw
106 .nr w \w'\*X'u
107 .if \nw>\n([W .nr [W \nw
108 .nr w \w'\*N'u
109 .if \nw>\n([W .nr [W \nw
110 .nr w \w'\*e'u
111 .if \nw>\n([W .nr [W \nw
112 .nr w \w'\*C'u
113 .if \nw>\n([W .nr [W \nw
114 .nr w \w'\*S'u
115 .if \nw>\n([W .nr [W \nw
116 .nr [W +\w'\|\|'u
117 .de []
118 .nr w \w'\\$2'
119 .nr H \\n([Wu-\\nwu
120 .nr h \\nHu/2u
121 .\" do fancy box in troff
122 .ie t .ds \\$1 \(br\v'-1p'\(br\v'1p'\h'\\nhu'\\$2\h'\\nHu-\\nhu'\(br\l'-\\n([Wu\(ul'\v'-1p'\(br\l'-\\n([Wu\(rn'\v'1p'\*s
123 .el .ds \\$1 \\$2\*s
124 ..
125 .[] Et \v'-1p'\*X\v'1p'
126 .[] En \v'-1p'\*N\v'1p'
127 .[] Be \v'-1p'\*L\v'1p'
128 .[] AP \v'-1p'\s\nsAPC\s0\v'1p'
129 .[] Bs \v'-1p'\s\nsBS\s0\v'1p'
130 .[] Cs \v'-1p'\s\nsCSI\s0\v'1p'
131 .[] S3 \v'-1p'\s\nsSS3\s0\v'1p'
132 .[] Dc \v'-1p'\s\nsDCS\s0\v'1p'
133 .[] Os \v'-1p'\s\nsOSC\s0\v'1p'
134 .[] PM \v'-1p'\s\nsPM\s0\v'1p'
135 .[] ST \v'-1p'\s\nsST\s0\v'1p'
136 .[] Ta \v'-1p'\*T\v'1p'
137 .[] Lf \v'-1p'\s\nsLF\s0\v'1p'
138 .[] Vt \v'-1p'\s\nsVT\s0\v'1p'
139 .[] Ff \v'-1p'\s\nsFF\s0\v'1p'
140 .[] Cr \v'-1p'\s\nsCR\s0\v'1p'
141 .[] So \v'-1p'\s\nsSO\s0\v'1p'
142 .[] Sp \v'-1p'\s\nsSP\s0\v'1p'
143 .[] Si \v'-1p'\s\nsSI\s0\v'1p'
144 .[] Eb \v'-1p'\*e\v'1p'
145 .[] Ca \v'-1p'\*C\v'1p'
146 .[] Su \v'-1p'\*S\v'1p'
147 .[] Es \v'-1p'\*E\v'1p'
148 .[] Fs \v'-1p'\s\nsFS\s0\v'1p'
149 .[] Gs \v'-1p'\s\nsGS\s0\v'1p'
150 .[] Rs \v'-1p'\s\nsRS\s0\v'1p'
151 .[] Us \v'-1p'\s\nsUS\s0\v'1p'
152 .[] XX \v'-1p'\s\nsXX\s0\v'1p'
153 .[] $ $
154 .[] ! !
155 .[] # #
156 .[] % %
157 .[] (( (
158 .[] ) )
159 .[] * *
160 .[] + +
161 .[] 0 0
162 .[] 1 1
163 .[] 2 2
164 .[] 3 3
165 .[] 4 4
166 .[] 5 5
167 .[] 6 6
168 .[] 7 7
169 .[] 8 8
170 .[] 9 9
171 .[] : :
172 .[] ; ;
173 .[] = =
174 .[] / /
175 .[] < <
176 .[] > >
177 .[] ? ?
178 .[] @ @
179 .[] A A
180 .[] cB B
181 .[] C C
182 .[] D D
183 .[] E E
184 .[] F F
185 .[] G G
186 .[] H H
187 .[] I I
188 .[] J J
189 .[] K K
190 .[] L L
191 .[] M M
192 .[] N N
193 .[] O O
194 .[] P P
195 .[] Q Q
196 .[] R R
197 .[] S S
198 .[] T T
199 .[] V V
200 .[] W W
201 .[] XX X
202 .[] Y Y
203 .[] Z Z
204 .[] [[ [
205 .[] ]] ]
206 .[] bS \\e
207 .[] { {
208 .[] ] ]
209 .[] & &
210 .[] ^ ^
211 .[] _ _
212 .[] qu \'
213 .[] ` \`
214 .[] a a
215 .[] b b
216 .[] c c
217 .[] d d
218 .[] f f
219 .[] g g
220 .[] h h
221 .[] i i
222 .[] j j
223 .[] k k
224 .[] l l
225 .[] m m
226 .[] n n
227 .[] o o
228 .[] p p
229 .[] q q
230 .[] r r
231 .[] cs s
232 .[] t t
233 .[] u u
234 .[] v v
235 .[] w w
236 .[] x x
237 .[] y y
238 .[] z z
239 .[] | |
240 .[] } }
241 .[] ! !
242 .[] c" \(lq
243 .[] c~ ~
244 .[] Sc \fIc\fP
245 .ds Cc \fIC\fP
246 .ds Cb \fIC\v'.3m'\h'-.2m'\s-2b\s0\v'-.3m'\fP
247 .ds Cx \fIC\v'.3m'\h'-.2m'\s-2x\s0\v'-.3m'\fP
248 .ds Cy \fIC\v'.3m'\h'-.2m'\s-2y\s0\v'-.3m'\fP
249 .ds Pb \fIP\v'.3m'\h'-.2m'\s-2b\s0\v'-.3m'\fP
250 .ds Pc \fIP\v'.3m'\h'-.2m'\s-2c\s0\v'-.3m'\fP
251 .ds Pe \fIP\v'.3m'\h'-.2m'\s-2e\s0\v'-.3m'\fP
252 .ds Pl \fIP\v'.3m'\h'-.2m'\s-2l\s0\v'-.3m'\fP
253 .ds Pm \fIP\v'.3m'\h'-.2m'\s-2m\s0\v'-.3m'\fP
254 .ds Pp \fIP\v'.3m'\h'-.2m'\s-2p\s0\v'-.3m'\fP
255 .ds Pr \fIP\v'.3m'\h'-.2m'\s-2r\s0\v'-.3m'\fP
256 .ds Ps \fIP\v'.3m'\h'-.2m'\s-2s\s0\v'-.3m'\fP
257 .ds Pt \fIP\v'.3m'\h'-.2m'\s-2t\s0\v'-.3m'\fP
258 .ds Pu \fIP\v'.3m'\h'-.2m'\s-2u\s0\v'-.3m'\fP
259 .ds Pv \fIP\v'.3m'\h'-.2m'\s-2v\s0\v'-.3m'\fP
260 .ds Ix \fIx\fP
261 .ds Iy \fIy\fP
262 .ds Iw \fIw\fP
263 .ds Ih \fIh\fP
264 .ds Ir \fIr\fP
265 .ds Ic \fIc\fP
266 .ie t .nr LL 6.5i
267 .el .nr LL 72m
268 .if n .na
269 .TL
270 Xterm Control Sequences
271 .AU
272 Edward Moy
273 .AI
274 University of California, Berkeley
275 .sp
276 Revised by
277 .AU
278 Stephen Gildea
279 .AI
280 X Consortium (1994)
281 .AU
282 Thomas Dickey
283 .AI
284 XFree86 Project (1996-1999)
285 .AU
286 .
287 .am BT                  \" add page numbers after first page
288 .ds CF %
289 ..
290 .SH
291 Definitions
292 .IP \*(Sc
293 The literal character \fIc\fP.
294 .IP \*(Cc
295 A single (required) character.
296 .IP \*(Ps
297 A single (usually optional) numeric parameter, composed of one of more digits.
298 .IP \*(Pm
299 A multiple numeric parameter composed of any number of single numeric
300 parameters, separated by \*; character(s).
301 Individual values for the parameters are listed with \*(Ps .
302 .IP \*(Pt
303 A text parameter composed of printable characters.
304 .
305 .SH
306 C1 (8-Bit) Control Characters
307 .ds RH C1 (8-Bit) Control Characters
308 .LP
309 The \fIxterm\fP program recognizes both 8-bit and 7-bit control characters.
310 It generates 7-bit controls (by default) or 8-bit if S8C1T is enabled.
311 The following pairs of 7-bit and 8-bit control characters are equivalent:
312 .St
313 .IP \\*(Es\\*D
314 Index (IND: 0x84)
315 .IP \\*(Es\\*E
316 Next Line (NEL: 0x85)
317 .IP \\*(Es\\*H
318 Tab Set (HTS: 0x88)
319 .IP \\*(Es\\*M
320 Reverse Index (RI: 0x8d)
321 .IP \\*(Es\\*N
322 Single Shift Select of G2 Character Set (SS2: 0x8e): affects next character only
323 .IP \\*(Es\\*O
324 Single Shift Select of G3 Character Set (SS3: 0x8f): affects next character only
325 .IP \\*(Es\\*P
326 Device Control String (DCS: 0x90)
327 .IP \\*(Es\\*V
328 Start of Guarded Area (SPA: 0x96)
329 .IP \\*(Es\\*W
330 End of Guarded Area (EPA: 0x97)
331 .IP \\*(Es\\(*X
332 Start of String (SOS: 0x98)
333 .IP \\*(Es\\*Z
334 Return Terminal ID (DECID: 0x9a).  Obsolete form of \*(Cs\*c (DA).
335 .IP \\*(Es\\*([[
336 Control Sequence Introducer (CSI: 0x9b)
337 .IP \\*(Es\\*(bS
338 String Terminator (ST: 0x9c)
339 .IP \\*(Es\\*(]]
340 Operating System Command (OSC: 0x9d)
341 .IP \\*(Es\\*^
342 Privacy Message (PM: 0x9e)
343 .IP \\*(Es\\*_
344 Application Program Command (APC: 0x9f)
345 .Ed
346 .sp
347 .LP
348 These control characters are used in the vtXXX emulation.
349 .
350 .SH
351 VT100 Mode
352 .ds RH VT100 Mode
353 .LP
354 Most of these control sequences are standard VT102 control sequences,
355 but there is support for later DEC VT terminals (i.e., VT220 and VT320),
356 as well as ISO 6429 and \fIaixterm\fP color controls.
357 VT102 features not supported are
358 auto-repeat and blinking characters.
359 There are additional control sequences to provide
360 \fIxterm-\fPdependent functions, such as the scrollbar or window size.
361 Where the function is specified by DEC or ISO 6429, the code assigned
362 to it is given in parentheses.  The escape codes to designate and invoke
363 character sets are specified by ISO 2022; see that document for a
364 discussion of character sets.
365 .
366 .St
367 .\"
368 .LP
369 .B
370 Single-character functions
371 .\"
372 .IP \\*(Be
373 Bell (Ctrl-G)
374 .
375 .IP \\*(Bs
376 Backspace (Ctrl-H)
377 .
378 .IP \\*(Cr
379 Carriage Return (Ctrl-M)
380 .
381 .IP \\*(En
382 Return Terminal Status (Ctrl-E).
383 Default response is the terminal name, e.g., "xterm", but may be overridden
384 by a resource \fIanswerbackString\fP.
385 .
386 .IP \\*(Ff
387 Form Feed or New Page (NP) (Ctrl-L) same as LF
388 .
389 .IP \\*(Lf
390 Line Feed or New Line (NL) (Ctrl-J)
391 .
392 .IP \\*(So
393 Shift Out (Ctrl-N) \(-> Switch to Alternate Character Set: invokes the
394 G1 character set.
395 .
396 .IP \\*(Sp
397 Space.
398 .
399 .IP \\*(Ta
400 Horizontal Tab (HT) (Ctrl-I)
401 .
402 .IP \\*(Vt
403 Vertical Tab (Ctrl-K) same as LF
404 .
405 .IP \\*(Si
406 Shift In (Ctrl-O) \(-> Switch to Standard Character Set: invokes the
407 G0 character set (the default).
408 .Ed
409 .\"
410 .\"
411 .\"
412 .St
413 .LP
414 .B
415 Controls beginning with ESC (other than those where ESC is part of a 7-bit equivalent to 8-bit C1 controls), ordered by the final character(s).
416 .\"
417 .IP \\*(Es\\*(Sp\\*F
418 7-bit controls (S7C1T).
419 .
420 .IP \\*(Es\\*(Sp\\*G
421 8-bit controls (S8C1T).
422 .
423 .IP \\*(Es\\*(Sp\\*L
424 Set ANSI conformance level 1 (vt100, 7-bit controls).
425 .
426 .IP \\*(Es\\*(Sp\\*M
427 Set ANSI conformance level 2 (vt200).
428 .
429 .IP \\*(Es\\*(Sp\\*N
430 Set ANSI conformance level 3 (vt300).
431 .
432 .IP \\*(Es\\*#\\*3
433 DEC double-height line, top half (DECDHL)
434 .
435 .IP \\*(Es\\*#\\*4
436 DEC double-height line, bottom half (DECDHL)
437 .
438 .IP \\*(Es\\*#\\*5
439 DEC single-width line (DECSWL)
440 .
441 .IP \\*(Es\\*#\\*6
442 DEC double-width line (DECDWL)
443 .
444 .IP \\*(Es\\*#\\*8
445 DEC Screen Alignment Test (DECALN)
446 .
447 .IP \\*(Es\\*%\\*@
448 Select default character set, ISO 8859-1 (ISO 2022)
449 .
450 .IP \\*(Es\\*%\\*G
451 Select UTF-8 character set (ISO 2022)
452 .
453 .IP \\*(Es\\*(((\\*(Cc
454 Designate G0 Character Set (ISO 2022)
455 .IP \\*(Es\\*)\\*(Cc
456 Designate G1 Character Set (ISO 2022)
457 .
458 .IP \\*(Es\\**\\*(Cc
459 Designate G2 Character Set (ISO 2022)
460 .
461 .IP \\*(Es\\*+\\*(Cc
462 Designate G3 Character Set (ISO 2022)
463 .br
464 Final character \*(Cc for designating character sets
465 (\*0, \*A and \*(cB apply to VT100 and up, the remainder to VT220 and up):
466   \*(Cc = \*0 \(-> DEC Special Character and Line Drawing Set
467   \*(Cc = \*A \(-> United Kingdom (UK)
468   \*(Cc = \*(cB \(-> United States (USASCII)
469   \*(Cc = \*4 \(-> Dutch
470   \*(Cc = \*C or \*5 \(-> Finnish
471   \*(Cc = \*R \(-> French
472   \*(Cc = \*Q \(-> French Canadian
473   \*(Cc = \*K \(-> German
474   \*(Cc = \*Y \(-> Italian
475   \*(Cc = \*E or \*6 \(-> Norwegian/Danish
476   \*(Cc = \*Z \(-> Spanish
477   \*(Cc = \*H or \*7 \(-> Swedish
478   \*(Cc = \*= \(-> Swiss
479 .
480 .IP \\*(Es\\*7
481 Save Cursor (DECSC)
482 .
483 .IP \\*(Es\\*8
484 Restore Cursor (DECRC)
485 .
486 .IP \\*(Es\\*=
487 Application Keypad (DECPAM)
488 .
489 .IP \\*(Es\\*>
490 Normal Keypad (DECPNM)
491 .
492 .IP \\*(Es\\*F
493 Cursor to lower left corner of screen (if
494 enabled by the \fBhpLowerleftBugCompat\fP resource).
495 .
496 .IP \\*(Es\\*c
497 Full Reset (RIS)
498 .
499 .IP \\*(Es\\*l
500 Memory Lock (per HP terminals).  Locks memory above the cursor.
501 .
502 .IP \\*(Es\\*m
503 Memory Unlock (per HP terminals)
504 .
505 .IP \\*(Es\\*n
506 Invoke the G2 Character Set (LS2)
507 .
508 .IP \\*(Es\\*o
509 Invoke the G3 Character Set (LS3)
510 .
511 .IP \\*(Es\\*|
512 Invoke the G3 Character Set as GR (LS3R).  Has no visible effect in \fIxterm\fP.
513 .
514 .IP \\*(Es\\*}
515 Invoke the G2 Character Set as GR (LS2R).  Has no visible effect in \fIxterm\fP.
516 .
517 .IP \\*(Es\\*(c~
518 Invoke the G1 Character Set as GR (LS1R).  Has no visible effect in \fIxterm\fP.
519 .Ed
520 .
521 .St
522 .LP
523 .B
524 Application Program-Control functions
525 .IP \\*(AP\\*(Pt\\*s\\*(ST
526 \fIxterm\fP implements no APC functions; \*(Pt is ignored.
527 \*(Pt need not be printable characters.
528 .Ed
529 .
530 .St
531 .LP
532 .B
533 Device-Control functions
534 .IP \\*(Dc\\*(Ps\\*;\\*(Ps\\*|\\*(Pt\\*s\\*(ST
535 User-Defined Keys (DECUDK).
536 The first parameter:
537   \*(Ps = \*0 \(-> Clear all UDK definitions before starting (default)
538   \*(Ps = \*1 \(-> Erase Below (default)
539 .br
540 The second parameter:
541   \*(Ps = \*0 \(-> Lock the keys (default)
542   \*(Ps = \*1 \(-> Do not lock.
543 .br
544 The third parameter is a ';'-separated list of strings denoting
545 the key-code separated by a '/' from the hex-encoded key value.
546 The key codes correspond to the DEC function-key codes (e.g., F6=17).
547 .
548 .IP \\*(Dc\\*$\\*q\\*(Pt\\*s\\*(ST
549 Request Status String (DECRQSS).
550 The string following the "q" is one of the following:
551   \*(c"\*q      \(-> DECSCA
552   \*(c"\*p      \(-> DECSCL
553   \*r           \(-> DECSTBM
554   \*m           \(-> SGR
555 .br
556 \fIxterm\fP responds with
557 \*(Dc\*1\*$\*r\*(Pt\*s\*(ST
558 for valid requests, replacing the \*(Pt with the corresponding \*(Cs
559 string,
560 or
561 \*(Dc\*0\*$\*r\*(Pt\*s\*(ST
562 for invalid requests.
563 .
564 .IP \\*(Dc\\*+\\*q\\*(Pt\\*s\\*(ST
565 Request Termcap/Terminfo String (xterm, experimental).
566 The string following the "q" is a list of names
567 encoded in hexadecimal (2 digits per character)
568 separated by \*;
569 which correspond to termcap or terminfo key names.
570 .br
571 \fIxterm\fP responds with
572 \*(Dc\*1\*+\*r\*(Pt\*s\*(ST
573 for valid requests, adding to \*(Pt an \*=,
574 and the value of the corresponding string that xterm would send,
575 or
576 \*(Dc\*0\*+\*r\*(Pt\*s\*(ST
577 for invalid requests.
578 The strings are encoded in hexadecimal (2 digits per character).
579 .Ed
580 .\"
581 .St
582 .LP
583 .B
584 Functions using CSI, ordered by the final character(s)
585 .IP \\*(Cs\\*(Ps\\*s\\*@
586 Insert \*(Ps (Blank) Character(s) (default = 1) (ICH)
587 .
588 .IP \\*(Cs\\*(Ps\\*s\\*A
589 Cursor Up \*(Ps Times (default = 1) (CUU)
590 .
591 .IP \\*(Cs\\*(Ps\\*s\\*(cB
592 Cursor Down \*(Ps Times (default = 1) (CUD)
593 .
594 .IP \\*(Cs\\*(Ps\\*s\\*C
595 Cursor Forward \*(Ps Times (default = 1) (CUF)
596 .
597 .IP \\*(Cs\\*(Ps\\*s\\*D
598 Cursor Backward \*(Ps Times (default = 1) (CUB)
599 .
600 .IP \\*(Cs\\*(Ps\\*s\\*E
601 Cursor Next Line \*(Ps Times (default = 1) (CNL)
602 .
603 .IP \\*(Cs\\*(Ps\\*s\\*F
604 Cursor Preceding Line \*(Ps Times (default = 1) (CPL)
605 .
606 .IP \\*(Cs\\*(Ps\\*s\\*G
607 Cursor Character Absolute  [column] (default = [row,1]) (CHA)
608 .
609 .IP \\*(Cs\\*(Ps\\*s\\*;\\*(Ps\\*s\\*H
610 Cursor Position [row;column] (default = [1,1]) (CUP)
611 .
612 .IP \\*(Cs\\*(Ps\\*s\\*I
613 Cursor Forward Tabulation \*(Ps tab stops (default = 1) (CHT)
614 .
615 .IP \\*(Cs\\*(Ps\\*s\\*J
616 Erase in Display (ED)
617   \*(Ps = \*0 \(-> Erase Below (default)
618   \*(Ps = \*1 \(-> Erase Above
619   \*(Ps = \*2 \(-> Erase All
620   \*(Ps = \*3 \(-> Erase Saved Lines (xterm)
621 .
622 .IP \\*(Cs\\*?\\*(Ps\\*s\\*J
623 Erase in Display (DECSED)
624   \*(Ps = \*0 \(-> Selective Erase Below (default)
625   \*(Ps = \*1 \(-> Selective Erase Above
626   \*(Ps = \*2 \(-> Selective Erase All
627 .
628 .IP \\*(Cs\\*(Ps\\*s\\*K
629 Erase in Line (EL)
630   \*(Ps = \*0 \(-> Erase to Right (default)
631   \*(Ps = \*1 \(-> Erase to Left
632   \*(Ps = \*2 \(-> Erase All
633 .
634 .IP \\*(Cs\\*?\\*(Ps\\*s\\*K
635 Erase in Line (DECSEL)
636   \*(Ps = \*0 \(-> Selective Erase to Right (default)
637   \*(Ps = \*1 \(-> Selective Erase to Left
638   \*(Ps = \*2 \(-> Selective Erase All
639 .
640 .IP \\*(Cs\\*(Ps\\*s\\*L
641 Insert \*(Ps Line(s) (default = 1) (IL)
642 .
643 .IP \\*(Cs\\*(Ps\\*s\\*M
644 Delete \*(Ps Line(s) (default = 1) (DL)
645 .
646 .IP \\*(Cs\\*(Ps\\*s\\*P
647 Delete \*(Ps Character(s) (default = 1) (DCH)
648 .
649 .IP \\*(Cs\\*(Ps\\*s\\*S
650 Scroll up \*(Ps lines (default = 1) (SU)
651 .
652 .IP \\*(Cs\\*(Ps\\*s\\*T
653 Scroll down \*(Ps lines (default = 1) (SD)
654 .
655 .IP \\*(Cs\\*(Ps\\*s\\*;\\*(Ps\\*s\\*;\\*(Ps\\*s\\*;\\*(Ps\\*s\\*;\\*(Ps\\*s\\*T
656 Initiate hilite mouse tracking.
657 Parameters are [func;startx;starty;firstrow;lastrow].
658 See the section \fBMouse Tracking\fP.
659 .
660 .IP \\*(Cs\\*(Ps\\*s\\*(XX
661 Erase \*(Ps Character(s) (default = 1) (ECH)
662 .
663 .IP \\*(Cs\\*(Ps\\*s\\*Z
664 Cursor Backward Tabulation \*(Ps tab stops (default = 1) (CBT)
665 .
666 .IP \\*(Cs\\*(Pm\\*s\\*`
667 Character Position Absolute  [column] (default = [row,1]) (HPA)
668 .
669 .IP \\*(Cs\\*(Ps\\*s\\*b
670 Repeat the preceding graphic character \*(Ps times (REP)
671 .
672 .IP \\*(Cs\\*(Ps\\*s\\*c
673 Send Device Attributes (Primary DA)
674   \*(Ps = \*0, 1 or omitted \(-> request attributes from terminal.
675 The response depends on the \fBdecTerminalId\fP resource setting.
676   \(-> \*(Cs\*?\*1\*;\*2\*c (``VT100 with Advanced Video Option'')
677   \(-> \*(Cs\*?\*1\*;\*0\*c (``VT101 with No Options'')
678   \(-> \*(Cs\*?\*6\*c (``VT102'')
679   \(-> \*(Cs\*?\*6\*0\*;\*1\*;\*2\*;\*6\*;\*8\*;\*9\*;\*1\*5\*;\*c (``VT220'')
680 .br
681 The VT100-style response parameters do not mean anything by themselves.
682 VT220 parameters do, telling the host what features the terminal supports:
683   \(-> \*1 132-columns
684   \(-> \*2 Printer
685   \(-> \*6 Selective erase
686   \(-> \*8 User-defined keys
687   \(-> \*9 National replacement character sets
688   \(-> \*1\*5 Technical characters
689 .
690 .IP \\*(Cs\\*>\\*(Ps\\*s\\*c
691 Send Device Attributes (Secondary DA)
692   \*(Ps = \*0, 1 or omitted \(-> request the terminal's identification code.
693 The response depends on the \fBdecTerminalId\fP resource setting.
694 It should apply only to VT220 and up, but \fIxterm\fP extends this to VT100.
695   \(-> \*(Cs\*(Pp\*s\*;\*(Pv\*s\*;\*(Pc\*s\*c
696 .br
697 where \*(Pp denotes the terminal type
698   \(-> \*0 (``VT100'')
699   \(-> \*1 (``VT220'')
700 .br
701 and \*(Pv is the firmware version (for \fIxterm\fP, this is the XFree86
702 patch number, starting with 95).
703 In a DEC terminal, \*(Pc indicates the ROM cartridge
704 registration number and is always zero.
705 .
706 .IP \\*(Cs\\*(Pm\\*s\\*d
707 Line Position Absolute  [row] (default = [1,column]) (VPA)
708 .
709 .IP \\*(Cs\\*(Ps\\*s\\*;\\*(Ps\\*s\\*f
710 Horizontal and Vertical Position [row;column] (default = [1,1]) (HVP)
711 .
712 .IP \\*(Cs\\*(Ps\\*s\\*g
713 Tab Clear (TBC)
714   \*(Ps = \*0 \(-> Clear Current Column (default)
715   \*(Ps = \*3 \(-> Clear All
716 .
717 .IP \\*(Cs\\*(Pm\\*s\\*h
718 Set Mode (SM)
719   \*(Ps = \*2 \(-> Keyboard Action Mode (AM)
720   \*(Ps = \*4 \(-> Insert Mode (IRM)
721   \*(Ps = \*1\*2 \(-> Send/receive (SRM)
722   \*(Ps = \*2\*0 \(-> Automatic Newline (LNM)
723 .
724 .IP \\*(Cs\\*?\\*(Pm\\*s\\*h
725 DEC Private Mode Set (DECSET)
726   \*(Ps = \*1 \(-> Application Cursor Keys (DECCKM)
727   \*(Ps = \*2 \(-> Designate USASCII for character sets G0-G3 (DECANM),
728 and set VT100 mode.
729   \*(Ps = \*3 \(-> 132 Column Mode (DECCOLM)
730   \*(Ps = \*4 \(-> Smooth (Slow) Scroll (DECSCLM)
731   \*(Ps = \*5 \(-> Reverse Video (DECSCNM)
732   \*(Ps = \*6 \(-> Origin Mode (DECOM)
733   \*(Ps = \*7 \(-> Wraparound Mode (DECAWM)
734   \*(Ps = \*8 \(-> Auto-repeat Keys (DECARM)
735   \*(Ps = \*9 \(-> Send Mouse X & Y on button press.
736 See the section \fBMouse Tracking\fP.
737   \*(Ps = \*1\*8 \(-> Print form feed (DECPFF)
738   \*(Ps = \*1\*9 \(-> Set print extent to full screen (DECPEX)
739   \*(Ps = \*2\*5 \(-> Show Cursor (DECTCEM)
740   \*(Ps = \*3\*0 \(-> Show scrollbar (rxvt).
741   \*(Ps = \*3\*5 \(-> Enable font-shifting functions (rxvt).
742   \*(Ps = \*3\*8 \(-> Enter Tektronix Mode (DECTEK)
743   \*(Ps = \*4\*0 \(-> Allow 80 \z\(<-\(-> 132 Mode
744   \*(Ps = \*4\*1 \(-> \fImore\fP(1) fix (see \fIcurses\fP resource)
745   \*(Ps = \*4\*2 \(-> Enable Nation Replacement Character sets (DECNRCM)
746   \*(Ps = \*4\*4 \(-> Turn On Margin Bell
747   \*(Ps = \*4\*5 \(-> Reverse-wraparound Mode
748   \*(Ps = \*4\*6 \(-> Start Logging
749 (normally disabled by a compile-time option)
750   \*(Ps = \*4\*7 \(-> Use Alternate Screen Buffer (unless
751 disabled by the \fBtiteInhibit\fP resource)
752   \*(Ps = \*6\*6 \(-> Application keypad (DECNKM)
753   \*(Ps = \*6\*7 \(-> Backarrow key sends delete (DECBKM)
754   \*(Ps = \*1\*0\*0\*0 \(-> Send Mouse X & Y on button press and release.
755 See the section \fBMouse Tracking\fP.
756   \*(Ps = \*1\*0\*0\*1 \(-> Use Hilite Mouse Tracking.
757   \*(Ps = \*1\*0\*0\*2 \(-> Use Cell Motion Mouse Tracking.
758   \*(Ps = \*1\*0\*0\*3 \(-> Use All Motion Mouse Tracking.
759   \*(Ps = \*1\*0\*1\*0 \(-> Scroll to bottom on tty output (rxvt).
760   \*(Ps = \*1\*0\*1\*1 \(-> Scroll to bottom on key press (rxvt).
761   \*(Ps = \*1\*0\*3\*5 \(-> Enable special modifiers for Alt and NumLock keys.
762   \*(Ps = \*1\*0\*3\*6 \(-> Send ESC when Meta modifies a key
763 (enables the \fBmetaSendsEscape\fP resource).
764   \*(Ps = \*1\*0\*3\*7 \(-> Send DEL from the editing-keypad Delete key
765   \*(Ps = \*1\*0\*4\*7 \(-> Use Alternate Screen Buffer (unless
766 disabled by the \fBtiteInhibit\fP resource)
767   \*(Ps = \*1\*0\*4\*8 \(-> Save cursor as in DECSC (unless
768 disabled by the \fBtiteInhibit\fP resource)
769   \*(Ps = \*1\*0\*4\*9 \(-> Save cursor as in DECSC
770 and use Alternate Screen Buffer, clearing it first (unless
771 disabled by the \fBtiteInhibit\fP resource)
772   \*(Ps = \*1\*0\*5\*1 \(-> Set Sun function-key mode.
773   \*(Ps = \*1\*0\*5\*2 \(-> Set HP function-key mode.
774   \*(Ps = \*1\*0\*6\*0 \(-> Set legacy keyboard emulation (X11R6).
775   \*(Ps = \*1\*0\*6\*1 \(-> Set Sun/PC keyboard emulation of VT220 keyboard.
776 .
777 .IP \\*(Cs\\*(Pm\\*s\\*i
778 Media Copy (MC)
779   \*(Ps = \*0 \(-> Print screen (default)
780   \*(Ps = \*4 \(-> Turn off printer controller mode
781   \*(Ps = \*5 \(-> Turn on printer controller mode
782 .
783 .IP \\*(Cs\\*?\\*(Pm\\*s\\*i
784 Media Copy (MC, DEC-specific)
785   \*(Ps = \*1 \(-> Print line containing cursor
786   \*(Ps = \*4 \(-> Turn off autoprint mode
787   \*(Ps = \*5 \(-> Turn on autoprint mode
788   \*(Ps = \*1 \*0 \(-> Print composed display, ignores DECPEX
789   \*(Ps = \*1 \*1 \(-> Print all pages
790 .
791 .IP \\*(Cs\\*(Pm\\*s\\*l
792 Reset Mode (RM)
793   \*(Ps = \*2 \(-> Keyboard Action Mode (AM)
794   \*(Ps = \*4 \(-> Replace Mode (IRM)
795   \*(Ps = \*1\*2 \(-> Send/receive (SRM)
796   \*(Ps = \*2\*0 \(-> Normal Linefeed (LNM)
797 .
798 .IP \\*(Cs\\*?\\*(Pm\\*s\\*l
799 DEC Private Mode Reset (DECRST)
800   \*(Ps = \*1 \(-> Normal Cursor Keys (DECCKM)
801   \*(Ps = \*2 \(-> Designate VT52 mode (DECANM).
802   \*(Ps = \*3 \(-> 80 Column Mode (DECCOLM)
803   \*(Ps = \*4 \(-> Jump (Fast) Scroll (DECSCLM)
804   \*(Ps = \*5 \(-> Normal Video (DECSCNM)
805   \*(Ps = \*6 \(-> Normal Cursor Mode (DECOM)
806   \*(Ps = \*7 \(-> No Wraparound Mode (DECAWM)
807   \*(Ps = \*8 \(-> No Auto-repeat Keys (DECARM)
808   \*(Ps = \*9 \(-> Don't Send Mouse X & Y on button press
809   \*(Ps = \*1\*8 \(-> Don't print form feed (DECPFF)
810   \*(Ps = \*1\*9 \(-> Limit print to scrolling region (DECPEX)
811   \*(Ps = \*2\*5 \(-> Hide Cursor (DECTCEM)
812   \*(Ps = \*3\*0 \(-> Don't show scrollbar (rxvt).
813   \*(Ps = \*3\*5 \(-> Disable font-shifting functions (rxvt).
814   \*(Ps = \*4\*0 \(-> Disallow 80 \z\(<-\(-> 132 Mode
815   \*(Ps = \*4\*1 \(-> No \fImore\fP(1) fix (see \fIcurses\fP resource)
816   \*(Ps = \*4\*2 \(-> Disable Nation Replacement Character sets (DECNRCM)
817   \*(Ps = \*4\*4 \(-> Turn Off Margin Bell
818   \*(Ps = \*4\*5 \(-> No Reverse-wraparound Mode
819   \*(Ps = \*4\*6 \(-> Stop Logging
820 (normally disabled by a compile-time option)
821   \*(Ps = \*4\*7 \(-> Use Normal Screen Buffer
822   \*(Ps = \*6\*6 \(-> Numeric keypad (DECNKM)
823   \*(Ps = \*6\*7 \(-> Backarrow key sends backspace (DECBKM)
824   \*(Ps = \*1\*0\*0\*0 \(-> Don't Send Mouse X & Y on button press and
825 release.
826 See the section \fBMouse Tracking\fP.
827   \*(Ps = \*1\*0\*0\*1 \(-> Don't Use Hilite Mouse Tracking
828   \*(Ps = \*1\*0\*0\*2 \(-> Don't Use Cell Motion Mouse Tracking
829   \*(Ps = \*1\*0\*0\*3 \(-> Don't Use All Motion Mouse Tracking
830   \*(Ps = \*1\*0\*1\*0 \(-> Don't scroll to bottom on tty output (rxvt).
831   \*(Ps = \*1\*0\*1\*1 \(-> Don't scroll to bottom on key press (rxvt).
832   \*(Ps = \*1\*0\*3\*5 \(-> Disable special modifiers for Alt and NumLock keys.
833   \*(Ps = \*1\*0\*3\*6 \(-> Don't send ESC when Meta modifies a key
834 (disables the \fBmetaSendsEscape\fP resource).
835   \*(Ps = \*1\*0\*3\*7 \(-> Send VT220 Remove from the editing-keypad Delete key
836   \*(Ps = \*1\*0\*4\*7 \(-> Use Normal Screen Buffer, clearing screen
837 first if in the Alternate Screen (unless
838 disabled by the \fBtiteInhibit\fP resource)
839   \*(Ps = \*1\*0\*4\*8 \(-> Restore cursor as in DECRC (unless
840 disabled by the \fBtiteInhibit\fP resource)
841   \*(Ps = \*1\*0\*4\*9 \(-> Use Normal Screen Buffer and restore cursor
842 as in DECRC (unless
843 disabled by the \fBtiteInhibit\fP resource)
844   \*(Ps = \*1\*0\*5\*1 \(-> Reset Sun function-key mode.
845   \*(Ps = \*1\*0\*5\*2 \(-> Reset HP function-key mode.
846   \*(Ps = \*1\*0\*6\*0 \(-> Reset legacy keyboard emulation (X11R6).
847   \*(Ps = \*1\*0\*6\*1 \(-> Reset Sun/PC keyboard emulation of VT220 keyboard.
848 .
849 .IP \\*(Cs\\*(Pm\\*s\\*m
850 Character Attributes (SGR)
851   \*(Ps = \*0 \(-> Normal (default)
852   \*(Ps = \*1 \(-> Bold
853   \*(Ps = \*4 \(-> Underlined
854   \*(Ps = \*5 \(-> Blink (appears as Bold)
855   \*(Ps = \*7 \(-> Inverse
856   \*(Ps = \*8 \(-> Invisible (hidden)
857   \*(Ps = \*2\*2 \(-> Normal (neither bold nor faint)
858   \*(Ps = \*2\*4 \(-> Not underlined
859   \*(Ps = \*2\*5 \(-> Steady (not blinking)
860   \*(Ps = \*2\*7 \(-> Positive (not inverse)
861   \*(Ps = \*2\*8 \(-> Visible (not hidden)
862   \*(Ps = \*3\*0 \(-> Set foreground color to Black
863   \*(Ps = \*3\*1 \(-> Set foreground color to Red
864   \*(Ps = \*3\*2 \(-> Set foreground color to Green
865   \*(Ps = \*3\*3 \(-> Set foreground color to Yellow
866   \*(Ps = \*3\*4 \(-> Set foreground color to Blue
867   \*(Ps = \*3\*5 \(-> Set foreground color to Magenta
868   \*(Ps = \*3\*6 \(-> Set foreground color to Cyan
869   \*(Ps = \*3\*7 \(-> Set foreground color to White
870   \*(Ps = \*3\*9 \(-> Set foreground color to default (original)
871   \*(Ps = \*4\*0 \(-> Set background color to Black
872   \*(Ps = \*4\*1 \(-> Set background color to Red
873   \*(Ps = \*4\*2 \(-> Set background color to Green
874   \*(Ps = \*4\*3 \(-> Set background color to Yellow
875   \*(Ps = \*4\*4 \(-> Set background color to Blue
876   \*(Ps = \*4\*5 \(-> Set background color to Magenta
877   \*(Ps = \*4\*6 \(-> Set background color to Cyan
878   \*(Ps = \*4\*7 \(-> Set background color to White
879   \*(Ps = \*4\*9 \(-> Set background color to default (original).
880 .sp
881 If 16-color support is compiled, the following apply.
882 Assume that \fIxterm\fP's resources
883 are set so that the ISO color codes are the first 8 of a set of 16.
884 Then the \fIaixterm\fP colors are the bright versions of the ISO colors:
885   \*(Ps = \*9\*0 \(-> Set foreground color to Black
886   \*(Ps = \*9\*1 \(-> Set foreground color to Red
887   \*(Ps = \*9\*2 \(-> Set foreground color to Green
888   \*(Ps = \*9\*3 \(-> Set foreground color to Yellow
889   \*(Ps = \*9\*4 \(-> Set foreground color to Blue
890   \*(Ps = \*9\*5 \(-> Set foreground color to Magenta
891   \*(Ps = \*9\*6 \(-> Set foreground color to Cyan
892   \*(Ps = \*9\*7 \(-> Set foreground color to White
893   \*(Ps = \*1\*0\*0 \(-> Set background color to Black
894   \*(Ps = \*1\*0\*1 \(-> Set background color to Red
895   \*(Ps = \*1\*0\*2 \(-> Set background color to Green
896   \*(Ps = \*1\*0\*3 \(-> Set background color to Yellow
897   \*(Ps = \*1\*0\*4 \(-> Set background color to Blue
898   \*(Ps = \*1\*0\*5 \(-> Set background color to Magenta
899   \*(Ps = \*1\*0\*6 \(-> Set background color to Cyan
900   \*(Ps = \*1\*0\*7 \(-> Set background color to White
901 .sp
902 If \fIxterm\fP is compiled with the 16-color support disabled, it supports
903 the following, from \fIrxvt\fP:
904   \*(Ps = \*1\*0\*0 \(-> Set foreground and background color to default
905 .sp
906 If 88- or 256-color support is compiled, the following apply.
907   \*(Ps = \*3\*8 ; \*5 ; \*(Ps \(-> Set foreground color to the second \*(Ps
908   \*(Ps = \*4\*8 ; \*5 ; \*(Ps \(-> Set background color to the second \*(Ps
909 .sp
910 .
911 .IP \\*(Cs\\*(Ps\\*s\\*n
912 Device Status Report (DSR)
913   \*(Ps = \*5 \(-> Status Report \*(Cs\*0\*n (``OK'')
914   \*(Ps = \*6 \(-> Report Cursor Position (CPR) [row;column] as
915 .br
916 \*(Cs\*(Ir\*s\*;\*(Ic\*s\*R
917 .
918 .IP \\*(Cs\\*?\\*(Ps\\*s\\*n
919 Device Status Report (DSR, DEC-specific)
920   \*(Ps = \*6 \(-> Report Cursor Position (CPR) [row;column] as
921 \*(Cs\*?\*(Ir\*s\*;\*(Ic\*s\*R
922 (assumes page is zero).
923   \*(Ps = \*1\*5 \(-> Report Printer status as
924 \*(Cs\*?\*1\*0\*s\*n (ready)
925 or
926 \*(Cs\*?\*1\*1\*s\*n (not ready)
927   \*(Ps = \*2\*5 \(-> Report UDK status as
928 \*(Cs\*?\*2\*0\*s\*n (unlocked)
929 or
930 \*(Cs\*?\*2\*1\*s\*n (locked)
931   \*(Ps = \*2\*6 \(-> Report Keyboard status as
932 .br
933 \*(Cs\*?\*2\*7\*s\*;\*s\*1\*s\*;\*s\*0\*s\*;\*s\*0\*s\*n (North American)
934 .br
935 \*(Cs\*?\*5\*3\*s\*n Locator available, if compiled-in, or
936 .br
937 \*(Cs\*?\*5\*0\*s\*n No Locator, if not.
938 .
939 .IP \\*(Cs\\*s\\*!\\*p
940 Soft terminal reset (DECSTR)
941 .
942 .IP \\*(Cs\\*(Ps\\*s\\*;\\*(Ps\\*s\\*(c"\\*p
943 Set conformance level (DECSCL)
944 Valid values for the first parameter:
945   \*(Ps = \*6\*1 \(-> VT100
946   \*(Ps = \*6\*2 \(-> VT200
947   \*(Ps = \*6\*3 \(-> VT300
948 .br
949 Valid values for the second parameter:
950   \*(Ps = \*0 \(-> 8-bit controls
951   \*(Ps = \*1 \(-> 7-bit controls (always set for VT100)
952   \*(Ps = \*2 \(-> 8-bit controls
953 .
954 .IP \\*(Cs\\*(Ps\\*s\\*(c"\\*q
955 Select character protection attribute (DECSCA).
956 Valid values for the parameter:
957   \*(Ps = \*0 \(-> DECSED and DECSEL can erase (default)
958   \*(Ps = \*1 \(-> DECSED and DECSEL cannot erase
959   \*(Ps = \*2 \(-> DECSED and DECSEL can erase
960 .
961 .IP \\*(Cs\\*(Ps\\*s\\*;\\*(Ps\\*s\\*r
962 Set Scrolling Region [top;bottom] (default = full size of window) (DECSTBM)
963 .
964 .IP \\*(Cs\\*?\\*(Pm\\*s\\*r
965 Restore DEC Private Mode Values.  The value of \*(Ps previously saved is
966 restored.  \*(Ps values are the same as for DECSET.
967 .
968 .IP \\*(Cs\\*?\\*(Pm\\*s\\*(cs
969 Save DEC Private Mode Values.  \*(Ps values are the same as for DECSET.
970 .
971 .IP \\*(Cs\\*(Ps\\*s\\*;\\*(Ps\\*s\\*;\\*(Ps\\*s\\*t
972 Window manipulation (from \fIdtterm\fP, as well as extensions).
973 Valid values for the first (and any additional parameters) are:
974   \*(Ps = \*1 \(-> De-iconify window.
975   \*(Ps = \*2 \(-> Iconify window.
976   \*(Ps = \*3 ; \fIx ; y\fP \(-> Move window to [x, y].
977   \*(Ps = \*4 ; \fIheight ; width\fP \(-> Resize the \fIxterm\fP window to height and width in pixels.
978   \*(Ps = \*5 \(-> Raise the \fIxterm\fP window to the front of the stacking order.
979   \*(Ps = \*6 \(-> Lower the \fIxterm\fP window to the bottom of the stacking order.
980   \*(Ps = \*7 \(-> Refresh the \fIxterm\fP window.
981   \*(Ps = \*8 ; \fIheight ; width\fP \(-> Resize the text area to [height;width] in characters.
982   \*(Ps = \*9 ; \*0 \(-> Restore maximized window.
983   \*(Ps = \*9 ; \*1 \(-> Maximize window (i.e., resize to screen size).
984   \*(Ps = \*1\*1 \(-> Report \fIxterm\fP window state.
985 If the \fIxterm\fP window is open (non-iconified), it returns \*(Cs\*1\*t.
986 If the \fIxterm\fP window is iconified, it returns \*(Cs\*2\*t.
987   \*(Ps = \*1\*3 \(-> Report \fIxterm\fP window position as
988 \*(Cs\*3\*;\*(Ix\*;\*(Iy\*t
989   \*(Ps = \*1\*4 \(-> Report \fIxterm\fP window in pixels as
990 \*(Cs\*s\*4\*s\*;\*s\fIheight\fP\*s\*;\*s\fIwidth\fP\*s\*t
991   \*(Ps = \*1\*8 \(-> Report the size of the text area in characters as
992 \*(Cs\*s\*8\*s\*;\*s\fIheight\fP\*s\*;\*s\fIwidth\fP\*s\*t
993   \*(Ps = \*1\*9 \(-> Report the size of the screen in characters as
994 \*(Cs\*s\*9\*s\*;\*s\fIheight\fP\*s\*;\*s\fIwidth\fP\*s\*t
995   \*(Ps = \*2\*0 \(-> Report \fIxterm\fP window's icon label as
996 \*(Os\*s\*L\*s\fIlabel\fP\*s\*(ST
997   \*(Ps = \*2\*1 \(-> Report \fIxterm\fP window's title as
998 \*(Os\*s\*l\*s\fItitle\fP\*s\*(ST
999   \*(Ps >= \*2\*4 \(-> Resize to \*(Ps lines (DECSLPP)
1000 .
1001 .IP \\*(Cs\\*(Pt\\*s\\*;\\*(Pl\\*s\\*;\\*(Pb\\*s\\*;\\*(Pr\\*s\\*(qu\\*w
1002 Enable Filter Rectangle (DECEFR)
1003 .br
1004 Parameters are [top;left;bottom;right].
1005 .br
1006 Defines the coordinates of a filter rectangle and activates it.
1007 Anytime the locator is detected outside of the filter rectangle,
1008 an outside rectangle event is generated and the rectangle is disabled.
1009 Filter rectangles are always treated as "one-shot" events.
1010 Any parameters that are omitted default to the current locator position.
1011 If all parameters are omitted, any locator motion will be reported.
1012 DECELR always cancels any prevous rectangle definition.
1013 .
1014 .IP \\*(Cs\\*(Ps\\*s\\*x
1015 Request Terminal Parameters (DECREQTPARM)
1016 .
1017 .IP \\*(Cs\\*(Ps\\*s\\*;\\*(Pu\\*s\\*(qu\\*z
1018 Enable Locator Reporting (DECELR)
1019 .br
1020 Valid values for the first parameter:
1021   \*(Ps = \*0 \(-> Locator disabled (default)
1022   \*(Ps = \*1 \(-> Locator enabled
1023   \*(Ps = \*2 \(-> Locator enabled for one report, then disabled
1024 .br
1025 The second parameter specifies the coordinate unit for locator reports.
1026 .br
1027 Valid values for the second parameter:
1028   \*(Pu = \*0 or omitted \(-> default to character cells
1029   \*(Pu = \*1 \(-> device physical pixels
1030   \*(Pu = \*2 \(-> character cells
1031 .
1032 .IP \\*(Cs\\*(Pm\\*s\\*(qu\\*{
1033 Select Locator Events (DECSLE)
1034 .br
1035 Valid values for the first (and any additional parameters) are:
1036   \*(Ps = \*0 \(-> only respond to explicit host requests (DECRQLP)
1037              (default) also cancels any filter rectangle
1038   \*(Ps = \*1 \(-> report button down transitions
1039   \*(Ps = \*2 \(-> do not report button down transitions
1040   \*(Ps = \*3 \(-> report button up transitions
1041   \*(Ps = \*4 \(-> do not report button up transitions
1042 .
1043 .IP \\*(Cs\\*(Ps\\*s\\*(qu\\*|
1044 Request Locator Position (DECRQLP)
1045 .br
1046 Valid values for the parameter are:
1047   \*(Ps = \*0, 1 or omitted \(-> transmit a single DECLRP locator report
1048 .sp
1049 If Locator Reporting has been enabled by a DECELR, xterm will respond
1050 with a DECLRP Locator Report.  This report is also generated on button
1051 up and down events if they have been enabled with a DECSLE, or when
1052 the locator is detected outside of a filter rectangle, if filter rectangles
1053 have been enabled with a DECEFR.
1054 .sp
1055   \(-> \*(Cs\*(Pe\*s\*;\*(Pb\*s\*;\*(Pr\*s\*;\*(Pc\*s\*;\*(Pp\*s\*&\*s\*w
1056 .sp
1057 Parameters are [event;button;row;column;page].
1058 .br
1059 Valid values for the event:
1060   \*(Pe = \*0 \(-> locator unavailable - no other parameters sent
1061   \*(Pe = \*1 \(-> request - xterm received a DECRQLP
1062   \*(Pe = \*2 \(-> left button down
1063   \*(Pe = \*3 \(-> left button up
1064   \*(Pe = \*4 \(-> middle button down
1065   \*(Pe = \*5 \(-> middle button up
1066   \*(Pe = \*6 \(-> right button down
1067   \*(Pe = \*7 \(-> right button up
1068   \*(Pe = \*8 \(-> M4 button down
1069   \*(Pe = \*9 \(-> M4 button up
1070   \*(Pe = \*1\*0 \(-> locator outside filter rectangle
1071 .br
1072 ``button'' parameter is a bitmask indicating which buttons are pressed:
1073   \*(Pb = \*0 \(-> no buttons down
1074   \*(Pb & \*1 \(-> right button down
1075   \*(Pb & \*2 \(-> middle button down
1076   \*(Pb & \*4 \(-> left button down
1077   \*(Pb & \*8 \(-> M4 button down
1078 .br
1079 ``row'' and ``column'' parameters are the coordinates of the locator
1080 position in the xterm window, encoded as ASCII decimal.
1081 .br
1082 The ``page'' parameter is not used by xterm, and will be omitted.
1083 .
1084 .Ed
1085 .
1086 .St
1087 .LP
1088 .B
1089 Operating System Controls
1090 .
1091 .IP \\*(Os\\*(Ps\\*s\\*;\\*(Pt\\*s\\*(ST
1092 .IP \\*(Os\\*(Ps\\*s\\*;\\*(Pt\\*s\\*(Be
1093 Set Text Parameters.
1094 For colors and font,
1095 if \*(Pt is a "?", the control sequence elicits a response which consists
1096 of the control sequence which would set the corresponding value.
1097 The \fIdtterm\fP control sequences allow you to determine the icon name
1098 and window title.
1099   \*(Ps = \*0 \(-> Change Icon Name and Window Title to \*(Pt
1100   \*(Ps = \*1 \(-> Change Icon Name to \*(Pt
1101   \*(Ps = \*2 \(-> Change Window Title to \*(Pt
1102   \*(Ps = \*3 \(-> Set X property on top-level window. \*(Pt should be in the form
1103 "\fIprop=value\fP", or just "\fIprop\fP" to delete the property
1104   \*(Ps = \*4 ; \fIc ; name\fP \(-> Change Color #\fIc\fP to \fIcname\fP.  Any
1105 number of \fIc name\fP pairs may be given.
1106   \*(Ps = \*1\*0 \(-> Change color names starting with text foreground to \*(Pt
1107 (a list of one or more color names or RGB specifications, separated by
1108 semicolon, up to eight, as per \fIXParseColor\fP).
1109   \*(Ps = \*1\*1 \(-> Change colors starting with text background to \*(Pt
1110   \*(Ps = \*1\*2 \(-> Change colors starting with text cursor to \*(Pt
1111   \*(Ps = \*1\*3 \(-> Change colors starting with mouse foreground to \*(Pt
1112   \*(Ps = \*1\*4 \(-> Change colors starting with mouse background to \*(Pt
1113   \*(Ps = \*1\*5 \(-> Change colors starting with Tek foreground to \*(Pt
1114   \*(Ps = \*1\*6 \(-> Change colors starting with Tek background to \*(Pt
1115   \*(Ps = \*1\*7 \(-> Change colors starting with highlight to \*(Pt
1116   \*(Ps = \*4\*6 \(-> Change Log File to \*(Pt (normally disabled by a
1117 compile-time option)
1118   \*(Ps = \*5\*0 \(-> Set Font to \*(Pt
1119 If \*(Pt begins with a "#", index in the font menu, relative (if the
1120 next character is a plus or minus sign) or absolute.  A number is
1121 expected but not required after the sign (the default is the current
1122 entry for relative, zero for absolute indexing).
1123 .Ed
1124 .
1125 .St
1126 .LP
1127 .B
1128 Privacy Message
1129 .IP \\*(PM\\*(Pt\\*s\\*(ST
1130 \fIxterm\fP implements no PM functions; \*(Pt is ignored.
1131 \*(Pt need not be printable characters.
1132 .Ed
1133 .
1134 .SH
1135 PC-Style Function Keys
1136 .ds RH Function Keys
1137 .LP
1138 If \fIxterm\fP does minimal translation of the function keys, it usually does this
1139 with a PC-style keyboard, so PC-style function keys result.
1140 Sun keyboards are similar to PC keyboards.
1141 Both have cursor and scrolling operations printed on the keypad,
1142 which duplicate the smaller cursor and scrolling keypads.
1143 .LP
1144 X does not predefine NumLock (used for VT220 keyboards) or Alt (used as
1145 an extension for the Sun/PC keyboards) as modifiers.
1146 These keys are recognized as modifiers when enabled
1147 by the \fBnumLock\fP resource,
1148 or by the DECSET \*1\*0\*3\*5 control sequence.
1149 .LP
1150 The cursor keys transmit the following escape sequences depending on the
1151 mode specified via the \fBDECCKM\fP escape sequence.
1152 .TS
1153 center;
1154 cf3     cf3     cf3
1155 lf3w(2c)        lf3w(2c)        lf3w(2c) .
1156 Key     Normal  Application
1157 _
1158 Cursor Up       \*(Cs\*A        \*(S3\*A
1159 Cursor Down     \*(Cs\*(cB      \*(S3\*(cB
1160 Cursor Right    \*(Cs\*C        \*(S3\*C
1161 Cursor Left     \*(Cs\*D        \*(S3\*D
1162 .TE
1163 .LP
1164 The application keypad transmits the following escape sequences depending on the
1165 mode specified via the \fBDECPNM\fP and \fBDECPAM\fP escape sequences.
1166 Use the NumLock key to override the application mode.
1167 .LP
1168 Not all keys are present on the Sun/PC keypad (e.g., PF1, Tab), but are supported by
1169 the program.
1170 .TS
1171 center;
1172 cf3     cf3     cf3     cf3     cf3
1173 lf3w(2c)        lf3w(2c)        lf3w(2c)        lf3w(2c)        lf3w(2c) .
1174 Key     Numeric Application     Terminfo        Termcap
1175 _
1176 Space   \*(Sp   \*(S3\*(Sp      -       -
1177 Tab     \*(Ta   \*(S3\*I        -       -
1178 Enter   \*(Cr   \*(S3\*M        kent    @8
1179 PF1     \*(S3\*P        \*(S3\*P        kf1     k1
1180 PF2     \*(S3\*Q        \*(S3\*Q        kf2     k2
1181 PF3     \*(S3\*R        \*(S3\*R        kf3     k3
1182 PF4     \*(S3\*S        \*(S3\*S        kf4     k4
1183 * \f1(multiply)\fP      *       \*(S3\*j        -       -
1184 + \f1(add)\fP   +       \*(S3\*k        -       -
1185 , \f1(comma)\fP ,       \*(S3\*l        -       -
1186 - \f1(minus)\fP -       \*(S3\*m        -       -
1187 \. \f1(Delete)\fP       \.      \*(S3\*3\*(c~   -       -
1188 / \f1(divide)\fP        /       \*(S3\*o        -       -
1189 0 \f1(Insert)\fP        0       \*(Cs\*2\*(c~   -       -
1190 1 \f1(End)\fP   1       \*(Cs\*4\*(c~   kc1     K4
1191 2 \f1(DownArrow)\fP     2       \*(Cs\*(cB      -       -
1192 3 \f1(PageDown)\fP      3       \*(Cs\*5\*(c~   kc3     K5
1193 4 \f1(LeftArrow)\fP     4       \*(Cs\*D        -       -
1194 5 \f1(Begin)\fP 5       \*(Cs\*E        kb2     K2
1195 6 \f1(RightArrow)\fP    6       \*(Cs\*C        -       -
1196 7 \f1(Home)\fP  7       \*(Cs\*1\*(c~   ka1     K1
1197 8 \f1(UpArrow)\fP       8       \*(Cs\*A        -       -
1198 9 \f1(PageUp)\fP        9       \*(Cs\*5\*(c~   ka3     K3
1199 = (equal)       \&=     \*(S3\*(XX      -       -
1200 .TE
1201 They also provide 12 function keys, as well as a few other special-purpose keys.
1202 .TS
1203 center;
1204 cf3     cf3
1205 lf3w(2c)        lf3w(2c) .
1206 Key     Escape Sequence
1207 _
1208 F1      \*(S3\*P
1209 F2      \*(S3\*Q
1210 F3      \*(S3\*R
1211 F4      \*(S3\*S
1212 F5      \*(Cs\*1\*5\*(c~
1213 F6      \*(Cs\*1\*7\*(c~
1214 F7      \*(Cs\*1\*8\*(c~
1215 F8      \*(Cs\*1\*9\*(c~
1216 F9      \*(Cs\*2\*0\*(c~
1217 F10     \*(Cs\*2\*1\*(c~
1218 F11     \*(Cs\*2\*3\*(c~
1219 F12     \*(Cs\*2\*4\*(c~
1220 .TE
1221 .LP
1222 Older versions of \fIxterm\fP implement different escape sequences for F1 through F4.
1223 These can be activated by setting the \fIoldXtermFKeys\fP resource.
1224 However, since they do not correspond to any hardware terminal, they have been deprecated.
1225 (The DEC VT220 reserves F1 through F5 for local functions such as \fBSetup\fP).
1226 .TS
1227 center;
1228 cf3     cf3
1229 lf3w(2c)        lf3w(2c) .
1230 Key     Escape Sequence
1231 _
1232 F1      \*(Cs\*1\*1\*(c~
1233 F2      \*(Cs\*1\*2\*(c~
1234 F3      \*(Cs\*1\*3\*(c~
1235 F4      \*(Cs\*1\*4\*(c~
1236 .TE
1237 In normal mode, i.e., a Sun/PC keyboard
1238 when the \fBsunKeyboard\fP resource is false,
1239 \fIxterm\fP recognizes function key modifiers
1240 which are parameters appended before the final character
1241 of the control sequence.
1242 .TS
1243 center;
1244 cf3     lf3
1245 cf3w(2c)        lf3w(2c) .
1246 Code    Modifiers
1247 _
1248 2       Shift
1249 3       Alt
1250 4       Shift + Alt
1251 5       Control
1252 6       Shift + Control
1253 7       Alt + Control
1254 8       Shift + Alt + Control
1255 .TE
1256 For example, shift-F5 would be sent as
1257 \*(Cs\*1\*5\*;\*2\*(c~
1258
1259 If the \fBalwaysUseMods\fP resource is set, the Meta modifier also is
1260 recognized, making parameters 9 through 16.
1261 .SH
1262 VT220-Style Function Keys
1263 .LP
1264 However, \fIxterm\fP is most useful as a DEC VT102 or VT220 emulator.
1265 Set the \fBsunKeyboard\fP resource to true to force a Sun/PC keyboard
1266 to act like a VT220 keyboard.
1267 .LP
1268 The VT102/VT220 application keypad transmits unique escape sequences in
1269 application mode, which are distinct from the cursor and scrolling keypad:
1270 .TS
1271 center;
1272 cf3     cf3     cf3
1273 lf3w(2c)        lf3w(2c)        lf3w(2c) .
1274 Key     Numeric Application
1275 _
1276 Space   Space   \*(S3\*(Sp
1277 Tab     Tab     \*(S3\*I
1278 Enter   CR      \*(S3\*M
1279 PF1     \*(S3\*P        \*(S3\*P
1280 PF2     \*(S3\*Q        \*(S3\*Q
1281 PF3     \*(S3\*R        \*(S3\*R
1282 PF4     \*(S3\*S        \*(S3\*S
1283 * \f1(multiply)\fP      *       \*(S3\*j
1284 + \f1(add)\fP   +       \*(S3\*k
1285 , \f1(comma)\fP ,       \*(S3\*l
1286 - \f1(minus)\fP -       \*(S3\*m
1287 \. \f1(period)\fP       \.      \*(S3\*n
1288 / \f1(divide)\fP        /       \*(S3\*o
1289 0       0       \*(S3\*p
1290 1       1       \*(S3\*q
1291 2       2       \*(S3\*r
1292 3       3       \*(S3\*(cs
1293 4       4       \*(S3\*t
1294 5       5       \*(S3\*u
1295 6       6       \*(S3\*v
1296 7       7       \*(S3\*w
1297 8       8       \*(S3\*x
1298 9       9       \*(S3\*y
1299 = (equal)       \&=     \*(S3\*(XX
1300 .TE
1301 .LP
1302 The VT220 provides 8 additional function keys.
1303 With a Sun/PC keyboard, access these keys by Control/F1 for F13, etc.
1304 .TS
1305 center;
1306 cf3     cf3
1307 lf3w(2c)        lf3w(2c) .
1308 Key     Escape Sequence
1309 _
1310 F13     \*(Cs\*2\*5\*(c~
1311 F14     \*(Cs\*2\*6\*(c~
1312 F15     \*(Cs\*2\*8\*(c~
1313 F16     \*(Cs\*2\*9\*(c~
1314 F17     \*(Cs\*3\*1\*(c~
1315 F18     \*(Cs\*3\*2\*(c~
1316 F19     \*(Cs\*3\*3\*(c~
1317 F20     \*(Cs\*3\*4\*(c~
1318 .TE
1319 .SH
1320 VT52-Style Function Keys
1321 .LP
1322 A VT52 does not have function keys, but it does have a numeric keypad and cursor keys.
1323 They differ from the other emulations by the prefix.
1324 Also, the cursor keys do not change:
1325 .TS
1326 center;
1327 cf3     cf3
1328 lf3w(2c)        lf3w(2c) .
1329 Key     Normal/Application
1330 _
1331 Cursor Up       \*(Es\*A
1332 Cursor Down     \*(Es\*(cB
1333 Cursor Right    \*(Es\*C
1334 Cursor Left     \*(Es\*D
1335 .TE
1336 The keypad is similar:
1337 .TS
1338 center;
1339 cf3     cf3     cf3
1340 lf3w(2c)        lf3w(2c)        lf3w(2c) .
1341 Key     Numeric Application
1342 _
1343 Space   Space   \*(Es\*?\*(Sp
1344 Tab     Tab     \*(Es\*?\*I
1345 Enter   CR      \*(Es\*?\*M
1346 PF1     \*(Es\*P        \*(Es\*P
1347 PF2     \*(Es\*Q        \*(Es\*Q
1348 PF3     \*(Es\*R        \*(Es\*R
1349 PF4     \*(Es\*S        \*(Es\*S
1350 * \f1(multiply)\fP      *       \*(Es\*?\*j
1351 + \f1(add)\fP   +       \*(Es\*?\*k
1352 , \f1(comma)\fP ,       \*(Es\*?\*l
1353 - \f1(minus)\fP -       \*(Es\*?\*m
1354 \. \f1(period)\fP       \.      \*(Es\*?\*n
1355 / \f1(divide)\fP        /       \*(Es\*?\*o
1356 0       0       \*(Es\*?\*p
1357 1       1       \*(Es\*?\*q
1358 2       2       \*(Es\*?\*r
1359 3       3       \*(Es\*?\*(cs
1360 4       4       \*(Es\*?\*t
1361 5       5       \*(Es\*?\*u
1362 6       6       \*(Es\*?\*v
1363 7       7       \*(Es\*?\*w
1364 8       8       \*(Es\*?\*x
1365 9       9       \*(Es\*?\*y
1366 = (equal)       \&=     \*(Es\*?\*(XX
1367 .TE
1368 .SH
1369 Sun-Style Function Keys
1370 .LP
1371 The \fIxterm\fP program provides support for Sun keyboards more directly, by
1372 a menu toggle that causes it to send Sun-style function key codes rather than VT220.
1373 Note, however, that the \fIsun\fP and \fIvt100\fP emulations are not really
1374 compatible.  For example, their wrap-margin behavior differs.
1375 .LP
1376 Only function keys are altered; keypad and cursor keys are the same.
1377 The emulation responds identically.
1378 See the xterm-sun terminfo entry for details.
1379 .SH
1380 HP-Style Function Keys
1381 .LP
1382 Similarly, \fIxterm\fP can be compiled to support HP keyboards.
1383 See the xterm-hp terminfo entry for details.
1384 .SH
1385 Mouse Tracking
1386 .ds RH Mouse Tracking
1387 .LP
1388 The VT widget can be set to send the mouse position and other
1389 information on button presses.  These modes are typically used by
1390 editors and other full-screen applications that want to make use of
1391 the mouse.
1392
1393 There are six mutually exclusive modes.  One is DEC Locator mode, enabled by the
1394 DECELR \*(Cs\*(Ps\*s\*;\*(Ps\*s\*s\*'\*s\*z
1395 control sequence, and is not described here.  The remaining five
1396 modes are each enabled (or disabled) by a different parameter in
1397 DECSET \*(Cs\*?\*(Pm\*s\*h
1398 or
1399 DECRST \*(Cs\*?\*(Pm\*s\*l
1400 control sequence.
1401
1402 Manifest constants for the parameter values
1403 are defined in \fBxcharmouse.h\fP as follows:
1404 .
1405 .DS B
1406 #define SET_X10_MOUSE               9
1407 #define SET_VT200_MOUSE             1000
1408 #define SET_VT200_HIGHLIGHT_MOUSE   1001
1409 #define SET_BTN_EVENT_MOUSE         1002
1410 #define SET_ANY_EVENT_MOUSE         1003
1411 .DE
1412 .LP
1413 The motion reporting modes are strictly \fIxterm\fP extensions, and are not
1414 part of any standard, though they are analogous to the DEC VT200 DECELR
1415 locator reports.
1416
1417 Parameters (such as pointer position and button number) for all mouse
1418 tracking escape sequences generated by \fIxterm\fP
1419 encode numeric parameters in a single character as
1420 \fIvalue\fP+32.
1421 For example, \*! specifies the value 1.
1422 The upper left character position on the terminal is denoted as 1,1.
1423
1424 X10 compatibility mode sends an escape sequence only on button press,
1425 encoding the location and the mouse button pressed.
1426 It is enabled by specifying parameter 9 to DECSET.
1427 On button press, \fIxterm\fP sends
1428 \*(Cs\*M\*(Cb\*(Cx\*(Cy (6 characters).
1429 \*(Cb is button\-1.
1430 \*(Cx and \*(Cy are the x and y coordinates of the mouse when the
1431 button was pressed.
1432
1433 Normal tracking mode sends an escape sequence on both button press and
1434 release.  Modifier key (shift, ctrl, meta) information is also sent.
1435 It is enabled by specifying parameter 1000 to DECSET.
1436 On button press or release, \fIxterm\fP sends
1437 \*(Cs\*M\*(Cb\*(Cx\*(Cy.
1438 The low two bits of \*(Cb encode button information:
1439 0=MB1 pressed, 1=MB2 pressed, 2=MB3 pressed, 3=release.
1440 The next three bits encode the modifiers which were down when the button was
1441 pressed and are added together:  4=Shift, 8=Meta, 16=Control.
1442 Note however that the shift and control bits are normally unavailable
1443 because \fIxterm\fP uses the control modifier with mouse for popup menus,
1444 and the shift modifier is used in the default translations for button events.
1445 The \fIMeta\fP modifier recognized by \fIxterm\fP is the \fImod1\fP mask,
1446 and is not necessarily the "Meta" key (see \fIxmodmap\fP).
1447 \*(Cx and \*(Cy are the x and y coordinates of the mouse event, encoded as
1448 in X10 mode.
1449
1450 Wheel mice may return buttons 4 and 5.
1451 Those buttons are represented by adding 64 to the event code.
1452
1453 Mouse hilite tracking notifies a program of a button press, receives a
1454 range of lines from the program, highlights the region covered by
1455 the mouse within that range until button release, and then sends the
1456 program the release coordinates.
1457 It is enabled by specifying parameter 1001 to DECSET.
1458 Highlighting is performed only for button 1, though other button events
1459 can be received.
1460 \fBWarning:\fP use of this mode requires a cooperating program or it will
1461 hang \fIxterm.\fP
1462 On button press, the same information as for normal tracking is
1463 generated; \fIxterm\fP then waits for the program to send mouse
1464 tracking information.
1465 \fIAll X events are ignored until the proper escape sequence is
1466 received from the pty:\fP
1467 \*(Cs\*(Ps\*s\*;\*(Ps\*s\*;\*(Ps\*s\*;\*(Ps\*s\*;\*(Ps\*s\*T.
1468 The parameters are \fIfunc, startx, starty, firstrow,\fP and \fIlastrow.\fP
1469 \fIfunc\fP is non-zero to initiate hilite tracking and zero to abort.
1470 \fIstartx\fP and \fIstarty\fP give the starting x and y location for
1471 the highlighted region.  The ending location tracks the mouse, but
1472 will never be above row \fIfirstrow\fP and will always be above row
1473 \fIlastrow.\fP  (The top of the screen is row 1.)
1474 When the button is released, \fIxterm\fP reports the ending position
1475 one of two ways: if the start and end coordinates are valid text
1476 locations: \*(Cs\*t\*(Cx\*(Cy.  If either coordinate is past
1477 the end of the line:
1478 \*(Cs\*T\*(Cx\*(Cy\*(Cx\*(Cy\*(Cx\*(Cy.
1479 The parameters are \fIstartx, starty, endx, endy, mousex,\fP and \fImousey.\fP
1480 \fIstartx, starty, endx, \fPand\fI endy\fP give the starting and
1481 ending character positions of the region.  \fImousex\fP and \fImousey\fP
1482 give the location of the mouse at button up, which may not be over a
1483 character.
1484
1485 Button-event tracking is essentially the same as normal tracking, but
1486 \fIxterm\fP also reports button-motion events.  Motion events
1487 are reported only if the mouse pointer has moved to a different character
1488 cell.  It is enabled by specifying parameter 1002 to DECSET.
1489 On button press or release, \fIxterm\fP sends the same codes used by normal
1490 tracking mode.  On button-motion events, \fIxterm\fP adds 32 to the event code
1491 (the third character, \*(Cb).
1492 The other bits of the event code specify button and modifier keys as in normal mode.
1493 For example, motion into cell x,y with button 1
1494 down is reported as \*(Cs\*M\*@\*(Cx\*(Cy.
1495 ( \*@ = 32 + 0 (button 1) + 32 (motion indicator) ).
1496 Similarly, motion with button 3
1497 down is reported as \*(Cs\*M\*(cB\*(Cx\*(Cy.
1498 ( \*(cB = 32 + 2 (button 3) + 32 (motion indicator) ).
1499
1500 Any-event mode is the same as button-event mode, except that all motion
1501 events are reported instead of just those that enter a new character cell.
1502 It is enabled by specifying 1003 to DECSET.
1503 .
1504 .br
1505 .ds RH Tektronix 4014 Mode
1506 .SH
1507 Tektronix 4014 Mode
1508 .LP
1509 Most of these sequences are standard Tektronix 4014 control sequences.
1510 Graph mode supports the 12-bit addressing of the Tektronix 4014.
1511 The major features missing are
1512 the write-through and defocused modes.
1513 This document does not describe the commands used in the various
1514 Tektronix plotting modes but does describe the commands to switch modes.
1515 .St
1516 .IP \\*(Be
1517 Bell (Ctrl-G)
1518 .IP \\*(Bs
1519 Backspace (Ctrl-H)
1520 .IP \\*(Ta
1521 Horizontal Tab (Ctrl-I)
1522 .IP \\*(Lf
1523 Line Feed or New Line (Ctrl-J)
1524 .IP \\*(Vt
1525 Cursor up (Ctrl-K)
1526 .IP \\*(Ff
1527 Form Feed or New Page (Ctrl-L)
1528 .IP \\*(Cr
1529 Carriage Return (Ctrl-M)
1530 .IP \\*(Es\\*(Et
1531 Switch to VT100 Mode (ESC Ctrl-C)
1532 .IP \\*(Es\\*(En
1533 Return Terminal Status (ESC Ctrl-E)
1534 .IP \\*(Es\\*(Ff
1535 PAGE (Clear Screen) (ESC Ctrl-L)
1536 .IP \\*(Es\\*(So
1537 Begin 4015 APL mode (ignored by \fIxterm\fP) (ESC Ctrl-N)
1538 .IP \\*(Es\\*(Si
1539 End 4015 APL mode (ignored by \fIxterm\fP) (ESC Ctrl-O)
1540 .IP \\*(Es\\*(Eb
1541 COPY (Save Tektronix Codes to file COPYyyyy-mm-dd.hh:mm:ss) (ESC Ctrl-W)
1542 .IP \\*(Es\\*(Ca
1543 Bypass Condition (ESC Ctrl-X)
1544 .IP \\*(Es\\*(Su
1545 GIN mode (ESC Ctrl-Z)
1546 .IP \\*(Es\\*(Fs
1547 Special Point Plot Mode (ESC Ctrl-\e)
1548 .IP \\*(Es\\*8
1549 Select Large Character Set
1550 .IP \\*(Es\\*9
1551 Select #2 Character Set
1552 .IP \\*(Es\\*:
1553 Select #3 Character Set
1554 .IP \\*(Es\\*;
1555 Select Small Character Set
1556 .IP \\*(Os\\*(Ps\\*s\\*;\\*(Pt\\*s\\*(Be
1557 Set Text Parameters of VT window
1558   \*(Ps = \*0 \(-> Change Icon Name and Window Title to \*(Pt
1559   \*(Ps = \*1 \(-> Change Icon Name to \*(Pt
1560   \*(Ps = \*2 \(-> Change Window Title to \*(Pt
1561   \*(Ps = \*4\*6 \(-> Change Log File to \*(Pt (normally disabled by a
1562 compile-time option)
1563 .IP \\*(Es\\*`
1564 Normal Z Axis and Normal (solid) Vectors
1565 .IP \\*(Es\\*a
1566 Normal Z Axis and Dotted Line Vectors
1567 .IP \\*(Es\\*b
1568 Normal Z Axis and Dot-Dashed Vectors
1569 .IP \\*(Es\\*c
1570 Normal Z Axis and Short-Dashed Vectors
1571 .IP \\*(Es\\*d
1572 Normal Z Axis and Long-Dashed Vectors
1573 .IP \\*(Es\\*h
1574 Defocused Z Axis and Normal (solid) Vectors
1575 .IP \\*(Es\\*i
1576 Defocused Z Axis and Dotted Line Vectors
1577 .IP \\*(Es\\*j
1578 Defocused Z Axis and Dot-Dashed Vectors
1579 .IP \\*(Es\\*k
1580 Defocused Z Axis and Short-Dashed Vectors
1581 .IP \\*(Es\\*l
1582 Defocused Z Axis and Long-Dashed Vectors
1583 .IP \\*(Es\\*p
1584 Write-Thru Mode and Normal (solid) Vectors
1585 .IP \\*(Es\\*q
1586 Write-Thru Mode and Dotted Line Vectors
1587 .IP \\*(Es\\*r
1588 Write-Thru Mode and Dot-Dashed Vectors
1589 .IP \\*(Es\\*(cs
1590 Write-Thru Mode and Short-Dashed Vectors
1591 .IP \\*(Es\\*t
1592 Write-Thru Mode and Long-Dashed Vectors
1593 .IP \\*(Fs
1594 Point Plot Mode (Ctrl-\e)
1595 .IP \\*(Gs
1596 Graph Mode (Ctrl-])
1597 .IP \\*(Rs
1598 Incremental Plot Mode (Ctrl-^)
1599 .IP \\*(Us
1600 Alpha Mode (Ctrl-_)
1601 .Ed
1602 .
1603 .
1604 .br
1605 .ds RH VT52 Mode
1606 .SH
1607 VT52 Mode
1608 .LP
1609 Parameters for cursor movement are at the end of the \*(Es\*Y escape sequence.
1610 Each ordinate is encoded in a single character as \fIvalue\fP+32.
1611 For example, \*! is 1.
1612 The screen coodinate system is 0-based.
1613 .St
1614 .IP \\*(Es\\*A
1615 Cursor up.
1616 .IP \\*(Es\\*(cB
1617 Cursor down.
1618 .IP \\*(Es\\*C
1619 Cursor right.
1620 .IP \\*(Es\\*D
1621 Cursor left.
1622 .IP \\*(Es\\*F
1623 Enter graphics mode.
1624 .IP \\*(Es\\*G
1625 Exit graphics mode.
1626 .IP \\*(Es\\*H
1627 Move the cursor to the home position.
1628 .IP \\*(Es\\*I
1629 Reverse line feed.
1630 .IP \\*(Es\\*J
1631 Erase from the cursor to the end of the screen.
1632 .IP \\*(Es\\*K
1633 Erase from the cursor to the end of the line.
1634 .IP \\*(Es\\*Y\\*(Ps\\*s\\*(Ps
1635 Move the cursor to given row and column.
1636 .IP \\*(Es\\*Z
1637 Identify
1638   \(-> \*(Es\*s\*/\*s\*Z (``I am a VT52.'')
1639 .IP \\*(Es\\*=
1640 Enter alternate keypad mode.
1641 .IP \\*(Es\\*>
1642 Exit alternate keypad mode.
1643 .IP \\*(Es\\*<
1644 Exit VT52 mode (Enter VT100 mode).
1645 .Ed
1646 .
1647 .if n .pl \n(nlu+1v