1XTERM(1) X Window System XTERM(1)
2
3
4
6 xterm - terminal emulator for X
7
9 xterm [-toolkitoption ...] [-option ...] [shell]
10
12 The xterm program is a terminal emulator for the X Window System. It
13 provides DEC VT102/VT220 and selected features from higher-level
14 terminals such as VT320/VT420/VT520 (VTxxx). It also provides
15 Tektronix 4014 emulation for programs that cannot use the window system
16 directly. If the underlying operating system supports terminal
17 resizing capabilities (for example, the SIGWINCH signal in systems
18 derived from 4.3BSD), xterm will use the facilities to notify programs
19 running in the window whenever it is resized.
20
21 The VTxxx and Tektronix 4014 terminals each have their own window so
22 that you can edit text in one and look at graphics in the other at the
23 same time. To maintain the correct aspect ratio (height/width),
24 Tektronix graphics will be restricted to the largest box with a 4014's
25 aspect ratio that will fit in the window. This box is located in the
26 upper left area of the window.
27
28 Although both windows may be displayed at the same time, one of them is
29 considered the “active” window for receiving keyboard input and
30 terminal output. This is the window that contains the text cursor.
31 The active window can be chosen through escape sequences, the VT
32 Options menu in the VTxxx window, and the Tek Options menu in the 4014
33 window.
34
36 Xterm provides usable emulations of related DEC terminals:
37
38 • VT52 emulation is complete.
39
40 • VT102 emulation is fairly complete, but does not support autorepeat
41 (because that would affect the keyboard used by other X clients).
42
43 Double-size characters are displayed properly if your font server
44 supports scalable bitmap fonts.
45
46 • VT220 emulation does not support soft fonts, it is otherwise
47 complete.
48
49 • VT420 emulation (the default) supports controls for manipulating
50 rectangles of characters as well as left/right margins.
51
52 Xterm does not support some other features which are not suitable
53 for emulation, e.g., two-sessions.
54
55 Terminal database (terminfo (5) or termcap (5)) entries that work with
56 xterm include
57
58 an optional platform-specific entry (“xterm”),
59 “xterm”,
60 “vt102”,
61 “vt100”,
62 “ansi” and
63 “dumb”
64
65 Xterm automatically searches the terminal database in this order for
66 these entries and then sets the “TERM” variable (and the “TERMCAP”
67 environment variable on a few older systems). The alternatives after
68 “xterm” are very old, from the late 1980s.
69
70 VT100 and VT102 emulations are commonly equated, though they actually
71 differ. The VT102 provided controls for inserting and deleting lines.
72
73 Similarly, “ansi” and “vt100” are often equated. These are not really
74 the same. For instance, they use different controls for scrolling (but
75 xterm supports both). These features differ in an “ansi” terminal
76 description from xterm:
77
78 acsc
79 Pseudo-graphics (line-drawing) uses a different mapping.
80
81 xenl
82 Xterm wraps text at the right margin using the VT100 “newline
83 glitch” behavior.
84
85 Because of the wrapping behavior, you would occasionally have to
86 repaint the screen when using a text editor with the “ansi”
87 description.
88
89 You may also use descriptions corresponding to the various supported
90 emulations such as “vt220” or “vt420”, but should set the terminal
91 emulation level with the decTerminalID resource.
92
93 On most systems, xterm will use the terminfo database. Some older
94 systems use termcap. (The “TERMCAP” environment variable is not set if
95 xterm is linked against a terminfo library, since the requisite
96 information is not provided by the termcap emulation of terminfo
97 libraries).
98
99 Many of the special xterm features may be modified under program
100 control through a set of escape sequences different from the standard
101 VTxxx escape sequences (see Xterm Control Sequences).
102
103 The Tektronix 4014 emulation is also fairly good. It supports 12-bit
104 graphics addressing, scaled to the window size. Four different font
105 sizes and five different lines types are supported. There is no write-
106 through or defocused mode support. The Tektronix text and graphics
107 commands are recorded internally by xterm and may be written to a file
108 by sending the COPY escape sequence (or through the Tektronix menu; see
109 below). The name of the file will be
110
111 “COPYyyyy-MM-dd.hh:mm:ss”
112
113 where yyyy, MM, dd, hh, mm and ss are the year, month, day, hour,
114 minute and second when the COPY was performed (the file is created in
115 the directory xterm is started in, or the home directory for a login
116 xterm).
117
118 Not all of the features described in this manual are necessarily
119 available in this version of xterm. Some (e.g., the non-VT220
120 extensions) are available only if they were compiled in, though the
121 most commonly-used are in the default configuration.
122
124 Xterm automatically highlights the text cursor when the pointer enters
125 the window (selected) and unhighlights it when the pointer leaves the
126 window (unselected). If the window is the focus window, then the text
127 cursor is highlighted no matter where the pointer is.
128
129 In VTxxx mode, there are escape sequences to activate and deactivate an
130 alternate screen buffer, which is the same size as the display area of
131 the window. When activated, the current screen is saved and replaced
132 with the alternate screen. Saving of lines scrolled off the top of the
133 window is disabled until the normal screen is restored. The usual
134 terminal description for xterm allows the visual editor vi(1) to switch
135 to the alternate screen for editing and to restore the screen on exit.
136 A popup menu entry makes it simple to switch between the normal and
137 alternate screens for cut and paste.
138
139 In either VTxxx or Tektronix mode, there are escape sequences to change
140 the name of the windows. Additionally, in VTxxx mode, xterm implements
141 the window-manipulation control sequences from dtterm, such as resizing
142 the window, setting its location on the screen.
143
144 Xterm allows character-based applications to receive mouse events
145 (currently button-press and release events, and button-motion events)
146 as keyboard control sequences. See Xterm Control Sequences for
147 details.
148
150 Because xterm uses the X Toolkit library, it accepts the standard X
151 Toolkit command line options. Xterm also accepts many application-
152 specific options.
153
154 By convention, if an option begins with a “+” instead of a “-”, the
155 option is restored to its default value.
156
157 Most of the xterm options are actually parsed by the X Toolkit, which
158 sets resource values, and overrides corresponding resource-settings in
159 your X resource files. Xterm provides the X Toolkit with a table of
160 options. A few of these are marked, telling the X Toolkit to ignore
161 them (-help, -version, -class, -e, and -into). After the X Toolkit has
162 parsed the command-line parameters, it removes those which it handles,
163 leaving the specially-marked parameters for xterm to handle.
164
165 These options do not set a resource value, and are handled specially:
166
167 -version
168 This causes xterm to print a version number to the standard
169 output, and then exit.
170
171 -help This causes xterm to print out a verbose message describing its
172 options, one per line. The message is written to the standard
173 output. After printing the message, xterm exits. Xterm
174 generates this message, sorting it and noting whether a
175 “-option” or a “+option” turns the feature on or off, since
176 some features historically have been one or the other. Xterm
177 generates a concise help message (multiple options per line)
178 when an unknown option is used, e.g.,
179
180 xterm -z
181
182 If the logic for a particular option such as logging is not
183 compiled into xterm, the help text for that option also is not
184 displayed by the -help option.
185
186 The -version and -help options are interpreted even if xterm cannot
187 open the display, and are useful for testing and configuration scripts.
188 Along with -class, they are checked before other options. To do this,
189 xterm has its own (much simpler) argument parser, along with a table of
190 the X Toolkit's built-in list of options.
191
192 Relying upon the X Toolkit to parse the options and associated values
193 has the advantages of simplicity and good integration with the X
194 resource mechanism. There are a few drawbacks
195
196 • Xterm cannot tell easily whether a resource value was set by one of
197 the external resource- or application-defaults files, whether it
198 was set using xrdb(1), or if it was set through the -xrm option or
199 via some directly relevant command-line option. Xterm sees only
200 the end-result: a value supplied when creating its widgets.
201
202 • Xterm does not know the order in which particular options and items
203 in resource files are evaluated. Rather, it sees all of the values
204 for a given widget at the same time. In the design of these
205 options, some are deemed more important, and can override other
206 options.
207
208 The X Toolkit uses patterns (constants and wildcards) to match
209 resources. Once a particular pattern has been used, it will not
210 modify it. To override a given setting, a more-specific pattern
211 must be used, e.g., replacing “*” with “.”. Some poorly-designed
212 resource files are too specific to allow the command-line options
213 to affect the relevant widget values.
214
215 • In a few cases, the X Toolkit combines its standard options in ways
216 which do not work well with xterm. This happens with the color
217 (-fg, -bg) and reverse (-rv) options. Xterm makes a special case
218 of these and adjusts its sense of “reverse” to lessen user
219 surprise.
220
221 One parameter (after all options) may be given. That overrides xterm's
222 built-in choice of shell program:
223
224 • If the parameter is not a relative path, i.e., beginning with “./”
225 or “../”, xterm looks for the file in the user's PATH. In either
226 case, this check fails if xterm cannot construct an absolute path.
227
228 • If that check fails (or if no such parameter is given), xterm next
229 checks the “SHELL” variable. If that specifies an executable file,
230 xterm will attempt to start that. However, xterm additionally
231 checks if it is a valid shell, and will unset “SHELL” if it is not.
232
233 • If “SHELL” is not set to an executable file, xterm tries to use the
234 shell program specified in the user's password file entry. As
235 before, xterm verifies if this is a valid shell.
236
237 • Finally, if the password file entry does not specify a valid shell,
238 xterm uses /bin/sh.
239
240 The -e option cannot be used with this parameter since it uses all
241 parameters following the option.
242
243 Xterm validates shell programs by finding their pathname in the text
244 file /etc/shells. It treats the environment variable “SHELL” specially
245 because (like “TERM”), xterm both reads and updates the variable, and
246 because the program started by xterm is not necessarily a shell.
247
248 The other options are used to control the appearance and behavior. Not
249 all options are necessarily configured into your copy of xterm:
250
251 -132 Normally, the VT102 DECCOLM escape sequence that switches
252 between 80 and 132 column mode is ignored. This option causes
253 the DECCOLM escape sequence to be recognized, and the xterm
254 window will resize appropriately.
255
256 -ah This option indicates that xterm should always highlight the
257 text cursor. By default, xterm will display a hollow text
258 cursor whenever the focus is lost or the pointer leaves the
259 window.
260
261 +ah This option indicates that xterm should do text cursor
262 highlighting based on focus.
263
264 -ai This option disables active icon support if that feature was
265 compiled into xterm. This is equivalent to setting the vt100
266 resource activeIcon to “false”.
267
268 +ai This option enables active icon support if that feature was
269 compiled into xterm. This is equivalent to setting the vt100
270 resource activeIcon to “true”.
271
272 -aw This option indicates that auto-wraparound should be allowed,
273 and is equivalent to setting the vt100 resource autoWrap to
274 “true”.
275
276 Auto-wraparound allows the cursor to automatically wrap to the
277 beginning of the next line when it is at the rightmost position
278 of a line and text is output.
279
280 +aw This option indicates that auto-wraparound should not be
281 allowed, and is equivalent to setting the vt100 resource
282 autoWrap to “false”.
283
284 -b number
285 This option specifies the size of the inner border (the
286 distance between the outer edge of the characters and the
287 window border) in pixels. That is the vt100 internalBorder
288 resource. The default is “2”.
289
290 -baudrate number
291 Set the line-speed, used to test the behavior of applications
292 that use the line-speed when optimizing their output to the
293 screen. The default is “38400”.
294
295 -bc turn on text cursor blinking. This overrides the cursorBlink
296 resource.
297
298 +bc turn off text cursor blinking. This overrides the cursorBlink
299 resource.
300
301 -bcf milliseconds
302 set the amount of time text cursor is off when blinking via the
303 cursorOffTime resource.
304
305 -bcn milliseconds
306 set the amount of time text cursor is on when blinking via the
307 cursorOnTime resource.
308
309 -bdc Set the vt100 resource colorBDMode to “false”, disabling the
310 display of characters with bold attribute as color.
311
312 +bdc Set the vt100 resource colorBDMode to “true”, enabling the
313 display of characters with bold attribute as color rather than
314 bold.
315
316 -cb Set the vt100 resource cutToBeginningOfLine to “false”.
317
318 +cb Set the vt100 resource cutToBeginningOfLine to “true”.
319
320 -cc characterclassrange:value[, ...]
321 This sets classes indicated by the given ranges for using in
322 selecting by words (see CHARACTER CLASSES and the charClass
323 resource).
324
325 -cjk_width
326 Set the cjkWidth resource to “true”. When turned on,
327 characters with East Asian Ambiguous (A) category in UTR 11
328 have a column width of 2. Otherwise, they have a column width
329 of 1. This may be useful for some legacy CJK text terminal-
330 based programs assuming box drawings and others to have a
331 column width of 2. It also should be turned on when you
332 specify a TrueType CJK double-width (bi-width/monospace) font
333 either with -fa at the command line or faceName resource. The
334 default is “false”
335
336 +cjk_width
337 Reset the cjkWidth resource.
338
339 -class string
340 This option allows you to override xterm's resource class.
341 Normally it is “XTerm”, but can be set to another class such as
342 “UXTerm” to override selected resources.
343
344 X Toolkit sets the WM_CLASS property using the instance name
345 and this class value.
346
347 -cm This option disables recognition of ANSI color-change escape
348 sequences. It sets the colorMode resource to “false”.
349
350 +cm This option enables recognition of ANSI color-change escape
351 sequences. This is the same as the vt100 resource colorMode.
352
353 -cn This option indicates that newlines should not be cut in line-
354 mode selections. It sets the cutNewline resource to “false”.
355
356 +cn This option indicates that newlines should be cut in line-mode
357 selections. It sets the cutNewline resource to “true”.
358
359 -cr color
360 This option specifies the color to use for text cursor. The
361 default is to use the same foreground color that is used for
362 text. It sets the cursorColor resource according to the
363 parameter.
364
365 -cu This option indicates that xterm should work around a bug in
366 the more(1) program that causes it to incorrectly display lines
367 that are exactly the width of the window and are followed by a
368 line beginning with a tab (the leading tabs are not displayed).
369 This option is so named because it was originally thought to be
370 a bug in the curses(3x) cursor motion package.
371
372 +cu This option indicates that xterm should not work around the
373 more(1) bug mentioned above.
374
375 -dc This option disables the escape sequence to change dynamic
376 colors: the vt100 foreground and background colors, its text
377 cursor color, the pointer cursor foreground and background
378 colors, the Tektronix emulator foreground and background
379 colors, its text cursor color and highlight color. The option
380 sets the dynamicColors option to “false”.
381
382 +dc This option enables the escape sequence to change dynamic
383 colors. The option sets the dynamicColors option to “true”.
384
385 -e program [ arguments ... ]
386 This option specifies the program (and its command line
387 arguments) to be run in the xterm window. It also sets the
388 window title and icon name to be the basename of the program
389 being executed if neither -T nor -n are given on the command
390 line.
391
392 NOTE: This must be the last option on the command line.
393
394 -en encoding
395 This option determines the encoding on which xterm runs. It
396 sets the locale resource. Encodings other than UTF-8 are
397 supported by using luit. The -lc option should be used instead
398 of -en for systems with locale support.
399
400 -fa pattern
401 This option sets the pattern for fonts selected from the
402 FreeType library if support for that library was compiled into
403 xterm. This corresponds to the faceName resource. When a CJK
404 double-width font is specified, you also need to turn on the
405 cjkWidth resource.
406
407 If you specify both -fa and the X Toolkit option -fn, the -fa
408 setting overrides the latter.
409
410 See also the renderFont resource, which combines with this to
411 determine whether FreeType fonts are initially active.
412
413 -fb font
414 This option specifies a font to be used when displaying bold
415 text. It sets the boldFont resource.
416
417 This font must be the same height and width as the normal font,
418 otherwise it is ignored. If only one of the normal or bold
419 fonts is specified, it will be used as the normal font and the
420 bold font will be produced by overstriking this font.
421
422 See also the discussion of boldMode and alwaysBoldMode
423 resources.
424
425 -fbb This option indicates that xterm should compare normal and bold
426 fonts bounding boxes to ensure they are compatible. It sets
427 the freeBoldBox resource to “false”.
428
429 +fbb This option indicates that xterm should not compare normal and
430 bold fonts bounding boxes to ensure they are compatible. It
431 sets the freeBoldBox resource to “true”.
432
433 -fbx This option indicates that xterm should not assume that the
434 normal and bold fonts have VT100 line-drawing characters. If
435 any are missing, xterm will draw the characters directly. It
436 sets the forceBoxChars resource to “false”.
437
438 +fbx This option indicates that xterm should assume that the normal
439 and bold fonts have VT100 line-drawing characters. It sets the
440 forceBoxChars resource to “true”.
441
442 -fc fontchoice
443 Specify the initial font chosen from the font menu. The option
444 value corresponds to the initialFont resource.
445
446 -fd pattern
447 This option sets the pattern for double-width fonts selected
448 from the FreeType library if support for that library was
449 compiled into xterm. This corresponds to the
450 faceNameDoublesize resource.
451
452 -fi font
453 This option sets the font for active icons if that feature was
454 compiled into xterm.
455
456 See also the discussion of the iconFont resource.
457
458 -fs size
459 This option sets the pointsize for fonts selected from the
460 FreeType library if support for that library was compiled into
461 xterm. This corresponds to the faceSize resource.
462
463 -fullscreen
464 This option indicates that xterm should ask the window manager
465 to let it use the full-screen for display, e.g., without window
466 decorations. It sets the fullscreen resource to “true”.
467
468 +fullscreen
469 This option indicates that xterm should not ask the window
470 manager to let it use the full-screen for display. It sets the
471 fullscreen resource to “false”.
472
473 -fw font
474 This option specifies the font to be used for displaying wide
475 text. By default, it will attempt to use a font twice as wide
476 as the font that will be used to draw normal text. If no
477 double-width font is found, it will improvise, by stretching
478 the normal font. This corresponds to the wideFont resource.
479
480 -fwb font
481 This option specifies the font to be used for displaying bold
482 wide text. By default, it will attempt to use a font twice as
483 wide as the font that will be used to draw bold text. If no
484 double-width font is found, it will improvise, by stretching
485 the bold font. This corresponds to the wideBoldFont resource.
486
487 -fx font
488 This option specifies the font to be used for displaying the
489 preedit string in the “OverTheSpot” input method.
490
491 See also the discussion of the ximFont resource.
492
493 -hc color
494 (see -selbg).
495
496 -hf This option indicates that HP function key escape codes should
497 be generated for function keys. It sets the hpFunctionKeys
498 resource to “true”.
499
500 +hf This option indicates that HP function key escape codes should
501 not be generated for function keys. It sets the hpFunctionKeys
502 resource to “false”.
503
504 -hm Tells xterm to use highlightTextColor and highlightColor to
505 override the reversed foreground/background colors in a
506 selection. It sets the highlightColorMode resource to “true”.
507
508 +hm Tells xterm not to use highlightTextColor and highlightColor to
509 override the reversed foreground/background colors in a
510 selection. It sets the highlightColorMode resource to “false”.
511
512 -hold Turn on the hold resource, i.e., xterm will not immediately
513 destroy its window when the shell command completes. It will
514 wait until you use the window manager to destroy/kill the
515 window, or if you use the menu entries that send a signal,
516 e.g., HUP or KILL.
517
518 +hold Turn off the hold resource, i.e., xterm will immediately
519 destroy its window when the shell command completes.
520
521 -ie Turn on the ptyInitialErase resource, i.e., use the pseudo-
522 terminal's sense of the stty erase value.
523
524 +ie Turn off the ptyInitialErase resource, i.e., set the stty erase
525 value using the kb string from the termcap entry as a
526 reference, if available.
527
528 -im Turn on the useInsertMode resource, which forces use of insert
529 mode by adding appropriate entries to the TERMCAP environment
530 variable. (This option is ignored on most systems, because
531 TERMCAP is not used).
532
533 +im Turn off the useInsertMode resource.
534
535 -into windowId
536 Given an X window identifier (an integer, which can be
537 hexadecimal, octal or decimal according to whether it begins
538 with "0x", "0" or neither), xterm will reparent its top-level
539 shell widget to that window. This is used to embed xterm
540 within other applications.
541
542 For instance, there are scripts for Tcl/Tk and Gtk which can be
543 used to demonstrate the feature. When using Gtk, there is a
544 limitation of that toolkit which requires that xterm's
545 allowSendEvents resource is enabled.
546
547 -itc Set the vt100 resource colorITMode to “false”, disabling the
548 display of characters with italic attribute as color.
549
550 +itc Set the vt100 resource colorITMode to “true”, enabling the
551 display of characters with italic attribute as color rather
552 than italic.
553
554 -j This option indicates that xterm should do jump scrolling. It
555 corresponds to the jumpScroll resource. Normally, text is
556 scrolled one line at a time; this option allows xterm to move
557 multiple lines at a time so that it does not fall as far
558 behind. Its use is strongly recommended since it makes xterm
559 much faster when scanning through large amounts of text. The
560 VT100 escape sequences for enabling and disabling smooth scroll
561 as well as the VT Options menu can be used to turn this feature
562 on or off.
563
564 +j This option indicates that xterm should not do jump scrolling.
565
566 -k8 This option sets the allowC1Printable resource. When
567 allowC1Printable is set, xterm overrides the mapping of C1
568 control characters (code 128–159) to treat them as printable.
569
570 +k8 This option resets the allowC1Printable resource.
571
572 -kt keyboardtype
573 This option sets the keyboardType resource. Possible values
574 include: “unknown”, “default”, “legacy”, “hp”, “sco”, “sun”,
575 “tcap” and “vt220”.
576
577 The value “unknown”, causes the corresponding resource to be
578 ignored.
579
580 The value “default”, suppresses the associated resources
581
582 hpFunctionKeys,
583 scoFunctionKeys,
584 sunFunctionKeys,
585 tcapFunctionKeys,
586 oldXtermFKeys and
587 sunKeyboard,
588
589 using the Sun/PC keyboard layout.
590
591 -l Turn logging on, unless disabled by the logInhibit resource.
592
593 Some versions of xterm may have logging enabled. However,
594 normally logging is not supported, due to security concerns in
595 the early 1990s. That was a problem in X11R4 xterm (1989)
596 which was addressed by a patch to X11R5 late in 1993. X11R6
597 included these fixes. The older version (when running with
598 root privilege) would create the log file using root privilege.
599 The reason why xterm ran with root privileges was to open
600 pseudo-terminals. Those privileges are now needed only on very
601 old systems: Unix98 pseudo-terminals made the BSD scheme
602 unnecessary.
603
604 Unless overridden by the -lf option or the logFile resource:
605
606 • If the filename is “-”, then logging is sent to the
607 standard output.
608
609 • Otherwise a filename is generated, and the log file is
610 written to the directory from which xterm is invoked.
611
612 • The generated filename is of the form
613
614 XtermLog.XXXXXX
615
616 or
617
618 Xterm.log.hostname.yyyy.mm.dd.hh.mm.ss.XXXXXX
619
620 depending on how xterm was built.
621
622 +l Turn logging off.
623
624 -lc Turn on support of various encodings according to the users'
625 locale setting, i.e., LC_ALL, LC_CTYPE, or LANG environment
626 variables. This is achieved by turning on UTF-8 mode and by
627 invoking luit for conversion between locale encodings and
628 UTF-8. (luit is not invoked in UTF-8 locales.) This
629 corresponds to the locale resource.
630
631 The actual list of encodings which are supported is determined
632 by luit. Consult the luit manual page for further details.
633
634 See also the discussion of the -u8 option which supports UTF-8
635 locales.
636
637 +lc Turn off support of automatic selection of locale encodings.
638 Conventional 8bit mode or, in UTF-8 locales or with -u8 option,
639 UTF-8 mode will be used.
640
641 -lcc path
642 File name for the encoding converter from/to locale encodings
643 and UTF-8 which is used with -lc option or locale resource.
644 This corresponds to the localeFilter resource.
645
646 -leftbar
647 Force scrollbar to the left side of VT100 screen. This is the
648 default, unless you have set the rightScrollBar resource.
649
650 -lf filename
651 Specify the log filename. This sets the logFile resource. If
652 set to “-”, xterm writes its log to the standard output. See
653 the -l option.
654
655 -ls This option indicates that the shell that is started in the
656 xterm window will be a login shell (i.e., the first character
657 of argv[0] will be a dash, indicating to the shell that it
658 should read the user's .login or .profile).
659
660 The -ls flag and the loginShell resource are ignored if -e is
661 also given, because xterm does not know how to make the shell
662 start the given command after whatever it does when it is a
663 login shell - the user's shell of choice need not be a Bourne
664 shell after all. Also, xterm -e is supposed to provide a
665 consistent functionality for other applications that need to
666 start text-mode programs in a window, and if loginShell were
667 not ignored, the result of ~/.profile might interfere with
668 that.
669
670 If you do want the effect of -ls and -e simultaneously, you may
671 get away with something like
672
673 xterm -e /bin/bash -l -c "my command here"
674
675 Finally, -ls is not completely ignored, because xterm -ls -e
676 does write a /etc/wtmp entry (if configured to do so), whereas
677 xterm -e does not.
678
679 +ls This option indicates that the shell that is started should not
680 be a login shell (i.e., it will be a normal “subshell”).
681
682 -maximized
683 This option indicates that xterm should ask the window manager
684 to maximize its layout on startup. This corresponds to the
685 maximized resource.
686
687 Maximizing is not the reverse of iconifying; it is possible to
688 do both with certain window managers.
689
690 +maximized
691 This option indicates that xterm should ask the window manager
692 to not maximize its layout on startup.
693
694 -mb This option indicates that xterm should ring a margin bell when
695 the user types near the right end of a line.
696
697 +mb This option indicates that margin bell should not be rung.
698
699 -mc milliseconds
700 This option specifies the maximum time between multi-click
701 selections.
702
703 -mesg Turn off the messages resource, i.e., disallow write access to
704 the terminal.
705
706 +mesg Turn on the messages resource, i.e., allow write access to the
707 terminal.
708
709 -mk_width
710 Set the mkWidth resource to “true”. This makes xterm use a
711 built-in version of the wide-character width calculation. The
712 default is “false”
713
714 +mk_width
715 Reset the mkWidth resource.
716
717 -ms color
718 This option specifies the color to be used for the pointer
719 cursor. The default is to use the foreground color. This sets
720 the pointerColor resource.
721
722 -nb number
723 This option specifies the number of characters from the right
724 end of a line at which the margin bell, if enabled, will ring.
725 The default is “10”.
726
727 -nul This option disables the display of underlining.
728
729 +nul This option enables the display of underlining.
730
731 -pc This option enables the PC-style use of bold colors (see
732 boldColors resource).
733
734 +pc This option disables the PC-style use of bold colors.
735
736 -pf font
737 This option specifies the font to be used for the pointer. The
738 corresponding resource name is pointerFont. The resource value
739 default is cursor.
740
741 -pob This option indicates that the window should be raised whenever
742 a Control-G is received.
743
744 +pob This option indicates that the window should not be raised
745 whenever a Control-G is received.
746
747 -report-charclass
748 Print a report to the standard output showing information about
749 the character-classes which can be altered using the charClass
750 resource.
751
752 -report-colors
753 Print a report to the standard output showing information about
754 colors as xterm allocates them. This corresponds to the
755 reportColors resource.
756
757 -report-fonts
758 Print a report to the standard output showing information about
759 fonts which are loaded. This corresponds to the reportFonts
760 resource.
761
762 -report-icons
763 Print a report to the standard output showing information about
764 pixmap-icons which are loaded. This corresponds to the
765 reportIcons resource.
766
767 -report-xres
768 Print a report to the standard output showing the values of
769 boolean, numeric or string X resources for the VT100 widget
770 when initialization is complete. This corresponds to the
771 reportXRes resource.
772
773 -rightbar
774 Force scrollbar to the right side of VT100 screen.
775
776 -rvc This option disables the display of characters with reverse
777 attribute as color.
778
779 +rvc This option enables the display of characters with reverse
780 attribute as color.
781
782 -rw This option indicates that reverse-wraparound should be
783 allowed. This allows the cursor to back up from the leftmost
784 column of one line to the rightmost column of the previous
785 line. This is very useful for editing long shell command lines
786 and is encouraged. This option can be turned on and off from
787 the VT Options menu.
788
789 +rw This option indicates that reverse-wraparound should not be
790 allowed.
791
792 -s This option indicates that xterm may scroll asynchronously,
793 meaning that the screen does not have to be kept completely up
794 to date while scrolling. This allows xterm to run faster when
795 network latencies are very high and is typically useful when
796 running across a very large internet or many gateways.
797
798 +s This option indicates that xterm should scroll synchronously.
799
800 -samename
801 Does not send title and icon name change requests when the
802 request would have no effect: the name is not changed. This
803 has the advantage of preventing flicker and the disadvantage of
804 requiring an extra round trip to the server to find out the
805 previous value. In practice this should never be a problem.
806
807 +samename
808 Always send title and icon name change requests.
809
810 -sb This option indicates that some number of lines that are
811 scrolled off the top of the window should be saved and that a
812 scrollbar should be displayed so that those lines can be
813 viewed. This option may be turned on and off from the VT
814 Options menu.
815
816 +sb This option indicates that a scrollbar should not be displayed.
817
818 -selbg color
819 This option specifies the color to use for the background of
820 selected text. If not specified, reverse video is used. See
821 the discussion of the highlightColor resource.
822
823 -selfg color
824 This option specifies the color to use for selected text. If
825 not specified, reverse video is used. See the discussion of
826 the highlightTextColor resource.
827
828 -sf This option indicates that Sun function key escape codes should
829 be generated for function keys.
830
831 +sf This option indicates that the standard escape codes should be
832 generated for function keys.
833
834 -sh number
835 scale line-height values by the given number. See the
836 discussion of the scaleHeight resource.
837
838 -si This option indicates that output to a window should not
839 automatically reposition the screen to the bottom of the
840 scrolling region. This option can be turned on and off from
841 the VT Options menu.
842
843 +si This option indicates that output to a window should cause it
844 to scroll to the bottom.
845
846 -sk This option indicates that pressing a key while using the
847 scrollbar to review previous lines of text should cause the
848 window to be repositioned automatically in the normal position
849 at the bottom of the scroll region.
850
851 +sk This option indicates that pressing a key while using the
852 scrollbar should not cause the window to be repositioned.
853
854 -sl number
855 This option specifies the number of lines to save that have
856 been scrolled off the top of the screen. This corresponds to
857 the saveLines resource. The default is “1024”.
858
859 -sm This option, corresponding to the sessionMgt resource,
860 indicates that xterm should set up session manager callbacks.
861
862 +sm This option indicates that xterm should not set up session
863 manager callbacks.
864
865 -sp This option indicates that Sun/PC keyboard should be assumed,
866 providing mapping for keypad “+” to “,”, and CTRL-F1 to F13,
867 CTRL-F2 to F14, etc.
868
869 +sp This option indicates that the standard escape codes should be
870 generated for keypad and function keys.
871
872 -t This option indicates that xterm should start in Tektronix
873 mode, rather than in VTxxx mode. Switching between the two
874 windows is done using the “Options” menus.
875
876 Terminal database (terminfo (5) or termcap (5)) entries that
877 work with xterm are:
878
879 “tek4014”,
880 “tek4015”,
881 “tek4012”,
882 “tek4013”,
883 “tek4010”, and
884 “dumb”.
885
886 Xterm automatically searches the terminal database in this
887 order for these entries and then sets the “TERM” variable (and
888 the “TERMCAP” environment variable, if relevant).
889
890 +t This option indicates that xterm should start in VTxxx mode.
891
892 -tb This option, corresponding to the toolBar resource, indicates
893 that xterm should display a toolbar (or menubar) at the top of
894 its window. The buttons in the toolbar correspond to the popup
895 menus, e.g., control/left/mouse for Main Options.
896
897 +tb This option indicates that xterm should not set up a toolbar.
898
899 -ti term_id
900 Specify the name used by xterm to select the correct response
901 to terminal ID queries. It also specifies the emulation level,
902 used to determine the type of response to a DA control
903 sequence. Valid values include vt52, vt100, vt101, vt102,
904 vt220, and vt240 (the “vt” is optional). The default is
905 “vt420”. The term_id argument specifies the terminal ID to
906 use. (This is the same as the decTerminalID resource).
907
908 -tm string
909 This option specifies a series of terminal setting keywords
910 followed by the characters that should be bound to those
911 functions, similar to the stty program. The keywords and their
912 values are described in detail in the ttyModes resource.
913
914 -tn name
915 This option specifies the name of the terminal type to be set
916 in the TERM environment variable. It corresponds to the
917 termName resource. This terminal type must exist in the
918 terminal database (termcap or terminfo, depending on how xterm
919 is built) and should have li# and co# entries. If the terminal
920 type is not found, xterm uses the built-in list “xterm”,
921 “vt102”, etc.
922
923 -u8 This option sets the utf8 resource. When utf8 is set, xterm
924 interprets incoming data as UTF-8. This sets the wideChars
925 resource as a side-effect, but the UTF-8 mode set by this
926 option prevents it from being turned off. If you must turn
927 UTF-8 encoding on and off, use the -wc option or the
928 corresponding wideChars resource, rather than the -u8 option.
929
930 This option and the utf8 resource are overridden by the -lc and
931 -en options and locale resource. That is, if xterm has been
932 compiled to support luit, and the locale resource is not
933 “false” this option is ignored. We recommend using the -lc
934 option or the “locale: true” resource in UTF-8 locales when
935 your operating system supports locale, or -en UTF-8 option or
936 the “locale: UTF-8” resource when your operating system does
937 not support locale.
938
939 +u8 This option resets the utf8 resource.
940
941 -uc This option makes the cursor underlined instead of a box.
942
943 +uc This option makes the cursor a box instead of underlined.
944
945 -ulc This option disables the display of characters with underline
946 attribute as color rather than with underlining.
947
948 +ulc This option enables the display of characters with underline
949 attribute as color rather than with underlining.
950
951 -ulit This option, corresponding to the italicULMode resource,
952 disables the display of characters with underline attribute as
953 italics rather than with underlining.
954
955 +ulit This option, corresponding to the italicULMode resource,
956 enables the display of characters with underline attribute as
957 italics rather than with underlining.
958
959 -ut This option indicates that xterm should not write a record into
960 the system utmp log file.
961
962 +ut This option indicates that xterm should write a record into the
963 system utmp log file.
964
965 -vb This option indicates that a visual bell is preferred over an
966 audible one. Instead of ringing the terminal bell whenever a
967 Control-G is received, the window will be flashed.
968
969 +vb This option indicates that a visual bell should not be used.
970
971 -wc This option sets the wideChars resource.
972
973 When wideChars is set, xterm maintains internal structures for
974 16-bit characters. If xterm is not started in UTF-8 mode (or
975 if this resource is not set), initially it maintains those
976 structures to support 8-bit characters. Xterm can later be
977 switched, using a menu entry or control sequence, causing it to
978 reallocate those structures to support 16-bit characters.
979
980 The default is “false”.
981
982 +wc This option resets the wideChars resource.
983
984 -wf This option indicates that xterm should wait for the window to
985 be mapped the first time before starting the subprocess so that
986 the initial terminal size settings and environment variables
987 are correct. It is the application's responsibility to catch
988 subsequent terminal size changes.
989
990 +wf This option indicates that xterm should not wait before
991 starting the subprocess.
992
993 -ziconbeep percent
994 Same as zIconBeep resource. If percent is non-zero, xterms
995 that produce output while iconified will cause an XBell sound
996 at the given volume and have “***” prepended to their icon
997 titles. Most window managers will detect this change
998 immediately, showing you which window has the output. (A
999 similar feature was in x10 xterm.)
1000
1001 -C This option indicates that this window should receive console
1002 output. This is not supported on all systems. To obtain
1003 console output, you must be the owner of the console device,
1004 and you must have read and write permission for it. If you are
1005 running X under xdm on the console screen you may need to have
1006 the session startup and reset programs explicitly change the
1007 ownership of the console device in order to get this option to
1008 work.
1009
1010 -Sccn This option allows xterm to be used as an input and output
1011 channel for an existing program and is sometimes used in
1012 specialized applications. The option value specifies the last
1013 few letters of the name of a pseudo-terminal to use in slave
1014 mode, plus the number of the inherited file descriptor. If the
1015 option contains a “/” character, that delimits the characters
1016 used for the pseudo-terminal name from the file descriptor.
1017 Otherwise, exactly two characters are used from the option for
1018 the pseudo-terminal name, the remainder is the file descriptor.
1019 Examples (the first two are equivalent since the descriptor
1020 follows the last “/”):
1021
1022 -S/dev/pts/123/45
1023 -S123/45
1024 -Sab34
1025
1026 Note that xterm does not close any file descriptor which it did
1027 not open for its own use. It is possible (though probably not
1028 portable) to have an application which passes an open file
1029 descriptor down to xterm past the initialization or the -S
1030 option to a process running in the xterm.
1031
1032 Old Options
1033 The following command line arguments are provided for compatibility
1034 with older versions. They may not be supported in the next release as
1035 the X Toolkit provides standard options that accomplish the same task.
1036
1037 %geom This option specifies the preferred size and position of the
1038 Tektronix window. It is shorthand for specifying the
1039 “tekGeometry” resource.
1040
1041 #geom This option specifies the preferred position of the icon
1042 window. It is shorthand for specifying the “iconGeometry”
1043 resource.
1044
1045 -T string
1046 This option specifies the title for xterm's windows. It is
1047 equivalent to -title.
1048
1049 -n string
1050 This option specifies the icon name for xterm's windows. It is
1051 shorthand for specifying the “iconName” resource. Note that
1052 this is not the same as the toolkit option -name. The default
1053 icon name is the application name.
1054
1055 If no suitable icon is found, xterm provides a compiled-in
1056 pixmap.
1057
1058 X Toolkit sets the WM_ICON_NAME property using this value.
1059
1060 -r This option indicates that reverse video should be simulated by
1061 swapping the foreground and background colors. It is
1062 equivalent to -rv.
1063
1064 -w number
1065 This option specifies the width in pixels of the border
1066 surrounding the window. It is equivalent to -borderwidth or
1067 -bw.
1068
1069 X Toolkit Options
1070 The following standard X Toolkit command line arguments are commonly
1071 used with xterm:
1072
1073 -bd color
1074 This option specifies the color to use for the border of the
1075 window. The corresponding resource name is borderColor. Xterm
1076 uses the X Toolkit default, which is “XtDefaultForeground”.
1077
1078 Xterm's VT100 window has two borders: the inner border
1079 internalBorder and the outer border borderWidth, managed by the
1080 X Toolkit.
1081
1082 Normally xterm fills the inner border using the VT100 window's
1083 background color. If the colorInnerBorder resource is enabled,
1084 then xterm may fill the inner border using the borderColor
1085 resource.
1086
1087 -bg color
1088 This option specifies the color to use for the background of
1089 the window. The corresponding resource name is background.
1090 The default is “XtDefaultBackground”.
1091
1092 -bw number
1093 This option specifies the width in pixels of the border
1094 surrounding the window.
1095
1096 This appears to be a legacy of older X releases. It sets the
1097 borderWidth resource of the shell widget, and may provide
1098 advice to your window manager to set the thickness of the
1099 window frame. Most window managers do not use this
1100 information. See the -b option, which controls the inner
1101 border of the xterm window.
1102
1103 -display display
1104 This option specifies the X server to contact; see X(7).
1105
1106 -fg color
1107 This option specifies the color to use for displaying text.
1108 The corresponding resource name is foreground. The default is
1109 “XtDefaultForeground”.
1110
1111 -fn font
1112 This option specifies the font to be used for displaying normal
1113 text. The corresponding resource name is font. The resource
1114 value default is fixed.
1115
1116 -font font
1117 This is the same as -fn.
1118
1119 -geometry geometry
1120 This option specifies the preferred size and position of the
1121 VTxxx window; see X(7).
1122
1123 The normal geometry specification can be suffixed with @
1124 followed by a Xinerama screen specification; it can be either g
1125 for the global screen (default), c for the current screen or a
1126 screen number.
1127
1128 -iconic
1129 This option indicates that xterm should ask the window manager
1130 to start it as an icon rather than as the normal window. The
1131 corresponding resource name is iconic.
1132
1133 -name name
1134 This option specifies the application name under which
1135 resources are to be obtained, rather than the default
1136 executable file name. Name should not contain “.” or “*”
1137 characters.
1138
1139 -rv This option indicates that reverse video should be simulated by
1140 swapping the foreground and background colors. The
1141 corresponding resource name is reverseVideo.
1142
1143 +rv Disable the simulation of reverse video by swapping foreground
1144 and background colors.
1145
1146 -title string
1147 This option specifies the window title string, which may be
1148 displayed by window managers if the user so chooses. It is
1149 shorthand for specifying the “title” resource. The default
1150 title is the command line specified after the -e option, if
1151 any, otherwise the application name.
1152
1153 X Toolkit sets the WM_NAME property using this value.
1154
1155 -xrm resourcestring
1156 This option specifies a resource string to be used. This is
1157 especially useful for setting resources that do not have
1158 separate command line options.
1159
1160 X Toolkit accepts alternate names for a few of these options, e.g.,
1161
1162 • “-background” for “-bg”
1163
1164 • “-font” for “-fn”
1165
1166 • “-foreground” for “-fg”
1167
1168 Abbreviated options also are supported, e.g., “-v” for “-version.”
1169
1171 Xterm understands all of the core X Toolkit resource names and classes.
1172 It also uses the X Toolkit resource types (such as booleans, colors,
1173 fonts, integers, and strings) along with their respective converters.
1174 Those resource types are not always sufficient:
1175
1176 • Xterm's resource values may be lists of names. X Toolkit resource
1177 types do not include lists. Xterm uses a string for the resource,
1178 and parses it.
1179
1180 Comma-separated lists of names ignore case.
1181
1182 • Xterm may defer processing a resource until it is needed. For
1183 example, font2 through font7 are loaded as needed, to start faster.
1184 Again, the actual resource type is a string, parsed and used when
1185 needed.
1186
1187 Application specific resources (e.g., “XTerm.NAME”) follow:
1188
1189 Application Resources
1190 backarrowKeyIsErase (class BackarrowKeyIsErase)
1191 Tie the VTxxx backarrowKey and ptyInitialErase resources
1192 together by setting the DECBKM state according to whether the
1193 initial erase character is a backspace (8) or delete (127)
1194 character. A “false” value disables this feature. The default
1195 is “False”.
1196
1197 Here are tables showing how the initial settings for
1198
1199 • backarrowKeyIsErase (BKIE),
1200
1201 • backarrowKey (BK), and
1202
1203 • ptyInitialErase (PIE), along with the
1204
1205 • stty erase character (^H for backspace, ^? for delete)
1206
1207 will affect DECBKM. First, xterm obtains the initial erase
1208 character:
1209
1210 • xterm's internal value is ^H
1211
1212 • xterm asks the operating system for the value which stty
1213 shows
1214
1215 • the ttyModes resource may override erase
1216
1217 • if ptyInitialErase is false, xterm will look in the
1218 terminal database
1219
1220 Summarizing that as a table:
1221
1222 PIE stty termcap erase
1223
1224 ───────────────────────────────
1225 false ^H ^H ^H
1226 false ^H ^? ^?
1227 false ^? ^H ^H
1228 false ^? ^? ^?
1229 true ^H ^H ^H
1230 true ^H ^? ^H
1231 true ^? ^H ^?
1232 true ^? ^? ^?
1233
1234 Using that erase character, xterm allows further choices:
1235
1236 • if backarrowKeyIsErase is true, xterm uses the erase
1237 character for the initial state of DECBKM
1238
1239 • if backarrowKeyIsErase is false, xterm sets DECBKM to 2
1240 (internal). This ties together backarrowKey and the
1241 control sequence for DECBKM.
1242
1243 • applications can send a control sequence to set/reset
1244 DECBKM control set
1245
1246 • the “Backarrow Key (BS/DEL)” menu entry toggles DECBKM
1247
1248 Summarizing the initialization details:
1249
1250 erase BKIE BK DECBKM result
1251 ────────────────────────────────────────
1252 ^? false false 2 ^H
1253 ^? false true 2 ^?
1254 ^? true false 0 ^?
1255 ^? true true 1 ^?
1256 ^H false false 2 ^H
1257 ^H false true 2 ^?
1258 ^H true false 0 ^H
1259 ^H true true 1 ^H
1260
1261 buffered (class Buffered)
1262 Normally xterm is built with double-buffer support. This
1263 resource can be used to turn it on or off. Setting the
1264 resource to “true” turns double-buffering on. The default
1265 value is “False”.
1266
1267 bufferedFPS (class BufferedFPS)
1268 When xterm is built with double-buffer support, this gives the
1269 maximum number of frames/second. The default is “40” and is
1270 limited to the range 1 through 100.
1271
1272 cursorTheme (class CursorTheme)
1273 The Xcursor(7) library provides a way to change the pointer
1274 shape and size. The X11 library uses this library to extend
1275 the font- and glyph-cursor calls used by applications such as
1276 xterm to substitute external files for the built-in “core”
1277 cursors provided by X.
1278
1279 Xterm uses the pointerShape resource to select the X cursor
1280 shape. Most of the available sets of cursor themes provide an
1281 incomplete set of “core” cursors (while possibly adding other
1282 cursors). Because of this limitation, xterm disables the
1283 feature by default.
1284
1285 The cursor theme feature can be useful because X cursors are
1286 not scalable and on a high-resolution display, the cursors are
1287 hard to find. Some of the cursor themes include larger cursors
1288 to work around this limitation:
1289
1290 • The default core cursors are 8x8 pixels;
1291
1292 • Some cursor themes include cursors up to the X server limit
1293 of 64x64 pixels.
1294
1295 At startup, xterm sets the XCURSOR_THEME environment variable
1296 to enable or disable the cursor theme feature. The default
1297 value is “none”. Other values (including “default”) are passed
1298 to the Xcursor library to select a cursor theme.
1299
1300 fullscreen (class Fullscreen)
1301 Specifies whether or not xterm should ask the window manager to
1302 use a fullscreen layout on startup. Xterm accepts either a
1303 keyword (ignoring case) or the number shown in parentheses:
1304
1305 false (0)
1306 Fullscreen layout is not used initially, but may be later
1307 via menu-selection or control sequence.
1308
1309 true (1)
1310 Fullscreen layout is used initially, but may be disabled
1311 later via menu-selection or control sequence.
1312
1313 always (2)
1314 Fullscreen layout is used initially, and cannot be disabled
1315 later via menu-selection or control sequence.
1316
1317 never (3)
1318 Fullscreen layout is not used, and cannot be enabled later
1319 via menu-selection or control sequence.
1320
1321 The default is “false”.
1322
1323 hold (class Hold)
1324 If true, xterm will not immediately destroy its window when the
1325 shell command completes. It will wait until you use the window
1326 manager to destroy/kill the window, or if you use the menu
1327 entries that send a signal, e.g., HUP or KILL. You may scroll
1328 back, select text, etc., to perform most graphical operations.
1329 Resizing the display will lose data, however, since this
1330 involves interaction with the shell which is no longer running.
1331
1332 hpFunctionKeys (class HpFunctionKeys)
1333 Specifies whether or not HP function key escape codes should be
1334 generated for function keys. The default is “false”, i.e.,
1335 this feature is disabled.
1336
1337 The keyboardType resource is the preferred mechanism for
1338 selecting this mode.
1339
1340 iconGeometry (class IconGeometry)
1341 Specifies the preferred size and position of the application
1342 when iconified. It is not necessarily obeyed by all window
1343 managers.
1344
1345 iconHint (class IconHint)
1346 Specifies an icon which will be added to the window manager
1347 hints. Xterm provides no default value.
1348
1349 Set this resource to “none” to omit the hint entirely, using
1350 whatever the window manager may decide.
1351
1352 If the iconHint resource is given (or is set via the -n option)
1353 xterm searches for a pixmap file with that name, in the current
1354 directory as well as in /usr/share/pixmaps. if the resource
1355 does not specify an absolute pathname. In each case, xterm
1356 adds “_48x48” and/or “.xpm” to the filename after trying
1357 without those suffixes. If it is able to load the file, xterm
1358 sets the window manager hint for the icon-pixmap. These
1359 pixmaps are distributed with xterm, and can optionally be
1360 compiled-in:
1361
1362 • mini.xterm_16x16, mini.xterm_32x32, mini.xterm_48x48
1363
1364 • filled-xterm_16x16, filled-xterm_32x32, filled-xterm_48x48
1365
1366 • xterm_16x16, xterm_32x32, xterm_48x48
1367
1368 • xterm-color_16x16, xterm-color_32x32, xterm-color_48x48
1369
1370 In either case, xterm allows for adding a “_48x48” to specify
1371 the largest of the pixmaps as a default. That is, “mini.xterm”
1372 is the same as “mini.xterm_48x48”.
1373
1374 If no explicit iconHint resource is given (or if none of the
1375 compiled-in names matches), xterm uses “mini.xterm” (which is
1376 always compiled-in).
1377
1378 The iconHint resource has no effect on “desktop” files,
1379 including “panel” and “menu”. Those are typically set via a
1380 “.desktop” file; xterm provides samples for itself (and the
1381 uxterm script). The more capable desktop systems allow
1382 changing the icon on a per-user basis.
1383
1384 iconName (class IconName)
1385 Specifies a label for xterm when iconified. Xterm provides no
1386 default value; some window managers may assume the application
1387 name, e.g., “xterm”.
1388
1389 Setting the iconName resource sets the icon label unless
1390 overridden by zIconBeep or the control sequences which change
1391 the window and icon labels.
1392
1393 keyboardType (class KeyboardType)
1394 Enables one (or none) of the various keyboard-type resources:
1395 hpFunctionKeys, scoFunctionKeys, sunFunctionKeys,
1396 tcapFunctionKeys, oldXtermFKeys and sunKeyboard.
1397
1398 The resource's value should be one of the corresponding strings
1399 “hp”, “sco”, “sun”, “tcap”, “legacy” or “vt220”, respectively.
1400
1401 The individual resources are provided for legacy support; this
1402 resource is simpler to use. Xterm will use only one keyboard-
1403 type, but if multiple resources are set, it warns and uses the
1404 last one it checks.
1405
1406 The default is “unknown”, i.e., none of the associated
1407 resources are set via this resource.
1408
1409 maxBufSize (class MaxBufSize)
1410 Specify the maximum size of the input buffer. The default is
1411 “32768”. You cannot set this to a value less than the
1412 minBufSize resource. It will be increased as needed to make
1413 that value evenly divide this one.
1414
1415 On some systems you may want to increase one or both of the
1416 maxBufSize and minBufSize resource values to achieve better
1417 performance if the operating system prefers larger buffer
1418 sizes.
1419
1420 maximized (class Maximized)
1421 Specifies whether or not xterm should ask the window manager to
1422 maximize its layout on startup. The default is “false”.
1423
1424 menuHeight (class MenuHeight)
1425 Specifies the height of the toolbar, which may be increased by
1426 the X toolkit layout widget depending upon the fontsize used.
1427 The default is “25”.
1428
1429 menuLocale (class MenuLocale)
1430 Specify the locale used for character-set computations when
1431 loading the popup menus. Use this to improve initialization
1432 performance of the Athena popup menus, which may load
1433 unnecessary (and very large) fonts, e.g., in a locale having
1434 UTF-8 encoding. The default is “C” (POSIX).
1435
1436 To use the current locale (only useful if you have localized
1437 the resource settings for the menu entries), set the resource
1438 to an empty string.
1439
1440 messages (class Messages)
1441 Specifies whether write access to the terminal is allowed
1442 initially. See mesg(1). The default is “true”.
1443
1444 minBufSize (class MinBufSize)
1445 Specify the minimum size of the input buffer, i.e., the amount
1446 of data that xterm requests on each read. The default is
1447 “4096”. You cannot set this to a value less than 64.
1448
1449 omitTranslation (class OmitTranslation)
1450 Selectively omit one or more parts of xterm's default
1451 translations at startup. The resource value is a comma-
1452 separated list of keywords, which may be abbreviated:
1453
1454 default
1455 ignore (mouse) button-down events which were not handled
1456 by other translations
1457
1458 fullscreen
1459 assigns a key-binding to the fullscreen() action.
1460
1461 keypress
1462 assigns keypresses by default to the insert-seven-bit()
1463 and insert-eight-bit() actions.
1464
1465 paging assigns key bindings to the scroll-back() and
1466 scroll-forw() actions.
1467
1468 pointer
1469 assigns pointer motion and button events to the
1470 pointer-motion() and pointer-button() actions
1471 respectively.
1472
1473 popup-menu
1474 assigns mouse-buttons with the control modifier to the
1475 popup-menus.
1476
1477 reset assigns mouse-button 2 with the meta modifier to the
1478 clear-saved-lines action.
1479
1480 scroll-lock
1481 assigns a key-binding to the scroll-lock() action.
1482
1483 select assigns mouse- and keypress-combinations to actions
1484 which manipulate the selection.
1485
1486 Xterm also uses these actions to capture mouse button
1487 and motion events which can be manipulated with the
1488 mouse protocol control sequences. If the select
1489 translations are omitted, then the pointer-motion and
1490 pointer-button handle these mouse protocol control
1491 sequences instead.
1492
1493 shift-fonts
1494 assigns key-bindings to larger-vt-font() and
1495 smaller-vt-font() actions.
1496
1497 wheel-mouse
1498 assigns buttons 4 and 5 with different modifiers to the
1499 scroll-back() and scroll-forw() actions.
1500
1501 ptyHandshake (class PtyHandshake)
1502 If “true”, xterm will perform handshaking during initialization
1503 to ensure that the parent and child processes update the utmp
1504 and stty state.
1505
1506 See also waitForMap which waits for the pseudo-terminal's
1507 notion of the screen size, and ptySttySize which resets the
1508 screen size after other terminal initialization is complete.
1509 The default is “true”.
1510
1511 ptyInitialErase (class PtyInitialErase)
1512 If “true”, xterm will use the pseudo-terminal's sense of the
1513 stty erase value. If “false”, xterm will set the stty erase
1514 value to match its own configuration, using the kb string from
1515 the termcap entry as a reference, if available.
1516
1517 In either case, the result is applied to the TERMCAP variable
1518 which xterm sets, if the system uses TERMCAP.
1519
1520 See also the ttyModes resource, which may override this. The
1521 default is “False”.
1522
1523 ptySttySize (class PtySttySize)
1524 If “true”, xterm will reset the screen size after terminal
1525 initialization is complete. This is needed for some systems
1526 whose pseudo-terminals cannot propagate terminal
1527 characteristics. Where it is not needed, it can interfere with
1528 other methods for setting the initial screen size, e.g., via
1529 window manager interaction.
1530
1531 See also waitForMap which waits for a handshake-message giving
1532 the pseudo-terminal's notion of the screen size. The default
1533 is “false” on Linux and macOS systems, “true” otherwise.
1534
1535 reportColors (class ReportColors)
1536 If true, xterm will print to the standard output a summary of
1537 colors as it allocates them. The default is “false”.
1538
1539 reportFonts (class ReportFonts)
1540 If true, xterm will print to the standard output a summary of
1541 each font's metrics (size, number of glyphs, etc.), as it loads
1542 them. The default is “false”.
1543
1544 reportIcons (class ReportIcons)
1545 If true, xterm will print to the standard output a summary of
1546 each pixmap icon as it loads them. The default is “false”.
1547
1548 reportXRes (class ReportXRes)
1549 If true, xterm will print to the standard output a list of the
1550 boolean, numeric and string X resources for the VT100 widget
1551 after initialization. The default is “false”.
1552
1553 sameName (class SameName)
1554 If the value of this resource is “true”, xterm does not send
1555 title and icon name change requests when the request would have
1556 no effect: the name is not changed. This has the advantage of
1557 preventing flicker and the disadvantage of requiring an extra
1558 round trip to the server to find out the previous value. In
1559 practice this should never be a problem. The default is
1560 “true”.
1561
1562 scaleHeight (class ScaleHeight)
1563 Scale line-height values by the resource value, which is
1564 limited to “0.9” to “1.5”. The default value is “1.0”,
1565
1566 While this resource applies to either bitmap or TrueType fonts,
1567 its main purpose is to help work around incompatible changes in
1568 the Xft library's font metrics. Xterm checks the font metrics
1569 to find what the library claims are the bounding boxes for each
1570 glyph (character). However, some of Xft's features (such as
1571 the autohinter) can cause the glyphs to be scaled larger than
1572 the bounding boxes, and be partly overwritten by the next row.
1573
1574 See useClipping for a related resource.
1575
1576 scoFunctionKeys (class ScoFunctionKeys)
1577 Specifies whether or not SCO function key escape codes should
1578 be generated for function keys. The default is “false”, i.e.,
1579 this feature is disabled.
1580
1581 The keyboardType resource is the preferred mechanism for
1582 selecting this mode.
1583
1584 sessionMgt (class SessionMgt)
1585 If the value of this resource is “true”, xterm sets up session
1586 manager callbacks for XtNdieCallback and XtNsaveCallback. The
1587 default is “true”.
1588
1589 sunFunctionKeys (class SunFunctionKeys)
1590 Specifies whether or not Sun function key escape codes should
1591 be generated for function keys. The default is “false”, i.e.,
1592 this feature is disabled.
1593
1594 The keyboardType resource is the preferred mechanism for
1595 selecting this mode.
1596
1597 sunKeyboard (class SunKeyboard)
1598 Xterm translates certain key symbols based on its assumptions
1599 about your keyboard. This resource specifies whether or not
1600 Sun/PC keyboard layout (i.e., the PC keyboard's numeric keypad
1601 together with 12 function keys) should be assumed rather than
1602 DEC VT220. This causes the keypad “+” to be mapped to “,”.
1603 and CTRL F1-F10 to F11-F20, depending on the setting of the
1604 ctrlFKeys resource, so xterm emulates a DEC VT220 more
1605 accurately. Otherwise (the default, with sunKeyboard set to
1606 “false”), xterm uses PC-style bindings for the function keys
1607 and keypad.
1608
1609 PC-style bindings use the Shift, Alt, Control and Meta keys as
1610 modifiers for function-keys and keypad (see Xterm Control
1611 Sequences for details). The PC-style bindings are analogous to
1612 PCTerm, but not the same thing. Normally these bindings do not
1613 conflict with the use of the Meta key as described for the
1614 eightBitInput resource. If they do, note that the PC-style
1615 bindings are evaluated first.
1616
1617 See also the keyboardType resource.
1618
1619 tcapFunctionKeys (class TcapFunctionKeys)
1620 Specifies whether or not function key escape codes read from
1621 the termcap/terminfo entry corresponding to the TERM
1622 environment variable should be generated for function keys
1623 instead of those configured using sunKeyboard and keyboardType.
1624 The default is “false”, i.e., this feature is disabled.
1625
1626 The keyboardType resource is the preferred mechanism for
1627 selecting this mode.
1628
1629 termName (class TermName)
1630 Specifies the terminal type name to be set in the TERM
1631 environment variable.
1632
1633 title (class Title)
1634 Specifies a string that may be used by the window manager when
1635 displaying this application.
1636
1637 toolBar (class ToolBar)
1638 Specifies whether or not the toolbar should be displayed. The
1639 default is “true”.
1640
1641 ttyModes (class TtyModes)
1642 Specifies a string containing terminal setting keywords.
1643 Except where noted, they may be bound to characters. Other
1644 keywords set modes. Not all keywords are supported on a given
1645 system. Allowable keywords include:
1646
1647 Keyword POSIX? Notes
1648 ────────────────────────────────────────────────────────────────
1649 brk no CHAR may send an “interrupt” signal, as well
1650 as ending the input-line.
1651 dsusp no CHAR will send a terminal “stop” signal
1652 after input is flushed.
1653 eof yes CHAR will terminate input (i.e., an end of
1654 file).
1655 eol yes CHAR will end the line.
1656 eol2 no alternate CHAR for ending the line.
1657 erase yes CHAR will erase the last character typed.
1658 erase2 no alternate CHAR for erasing the last input-
1659 character.
1660 flush no CHAR will cause output to be discarded until
1661 another flush character is typed.
1662 intr yes CHAR will send an “interrupt” signal.
1663 kill yes CHAR will erase the current line.
1664 lnext no CHAR will enter the next character quoted.
1665 quit yes CHAR will send a “quit” signal.
1666 rprnt no CHAR will redraw the current line.
1667 start yes CHAR will restart the output after stopping
1668 it.
1669 status no CHAR will cause a system-generated status
1670 line to be printed.
1671 stop yes CHAR will stop the output.
1672 susp yes CHAR will send a terminal “stop” signal
1673 swtch no CHAR will switch to a different shell layer.
1674 tabs yes Mode disables tab-expansion.
1675 -tabs yes Mode enables tab-expansion.
1676 weras no CHAR will erase the last word typed.
1677
1678 Control characters may be specified as ^char (e.g., ^c or ^u)
1679 and ^? may be used to indicate delete (127). Use ^- to denote
1680 undef. Use \034 to represent ^\, since a literal backslash in
1681 an X resource escapes the next character.
1682
1683 This is very useful for overriding the default terminal
1684 settings without having to run stty every time an xterm is
1685 started. Note, however, that the stty program on a given host
1686 may use different keywords; xterm's table is built in. The
1687 POSIX column in the table indicates which keywords are
1688 supported by a standard stty program.
1689
1690 If the ttyModes resource specifies a value for erase, that
1691 overrides the ptyInitialErase resource setting, i.e., xterm
1692 initializes the terminal to match that value.
1693
1694 useInsertMode (class UseInsertMode)
1695 Force use of insert mode by adding appropriate entries to the
1696 TERMCAP environment variable. This is useful if the system
1697 termcap is broken. (This resource is ignored on most systems,
1698 because TERMCAP is not used). The default is “false”.
1699
1700 utmpDisplayId (class UtmpDisplayId)
1701 Specifies whether or not xterm should try to record the display
1702 identifier (display number and screen number) as well as the
1703 hostname in the system utmp log file. The default is “true”.
1704
1705 utmpInhibit (class UtmpInhibit)
1706 Specifies whether or not xterm should try to record the user's
1707 terminal in the system utmp log file. If true, xterm will not
1708 try. The default is “false”.
1709
1710 validShells (class ValidShells)
1711 Augment (add to) the system's /etc/shells, when determining
1712 whether to set the “SHELL” environment variable when running a
1713 given program.
1714
1715 The resource value is a list of lines (separated by newlines).
1716 Each line holds one pathname. Xterm ignores any line beginning
1717 with “#” after trimming leading/trailing whitespace from each
1718 line.
1719
1720 The default is an empty string.
1721
1722 waitForMap (class WaitForMap)
1723 Specifies whether or not xterm should wait for the initial
1724 window map before starting the subprocess. This is part of the
1725 ptyHandshake logic. When xterm is directed to wait in this
1726 fashion, it passes the terminal size from the display end of
1727 the pseudo-terminal to the terminal I/O connection, e.g., using
1728 the size according to the window manager. Otherwise, it uses
1729 the size as given in resource values or command-line option
1730 -geometry. The default is “false”.
1731
1732 zIconBeep (class ZIconBeep)
1733 Same as -ziconbeep command line argument. If the value of this
1734 resource is non-zero, xterms that produce output while
1735 iconified will cause an XBell sound at the given volume and
1736 have “*** ” prepended to their icon titles. Most window
1737 managers will detect this change immediately, showing you which
1738 window has the output. (A similar feature was in x10 xterm.)
1739 The default is “false”.
1740
1741 zIconTitleFormat (class ZIconTitleFormat)
1742 Allow customization of the string used in the zIconBeep
1743 feature. The default value is “*** %s”.
1744
1745 If the resource value contains a “%s”, then xterm inserts the
1746 icon title at that point rather than prepending the string to
1747 the icon title. (Only the first “%s” is used).
1748
1749 VT100 Widget Resources
1750 The following resources are specified as part of the vt100 widget
1751 (class VT100). They are specified by patterns such as
1752 “XTerm.vt100.NAME”.
1753
1754 If your xterm is configured to support the “toolbar”, then those
1755 patterns need an extra level for the form-widget which holds the
1756 toolbar and vt100 widget. A wildcard between the top-level “XTerm” and
1757 the “vt100” widget makes the resource settings work for either, e.g.,
1758 “XTerm*vt100.NAME”.
1759
1760 activeIcon (class ActiveIcon)
1761 Specifies whether or not active icon windows are to be used
1762 when the xterm window is iconified, if this feature is compiled
1763 into xterm. The active icon is a miniature representation of
1764 the content of the window and will update as the content
1765 changes. Not all window managers necessarily support
1766 application icon windows. Some window managers will allow you
1767 to enter keystrokes into the active icon window. The default
1768 is “default”.
1769
1770 Xterm accepts either a keyword (ignoring case) or the number
1771 shown in parentheses:
1772
1773 false (0)
1774 No active icon is shown.
1775
1776 true (1)
1777 The active icon is shown. If you are using twm, use
1778 this setting to enable active-icons.
1779
1780 default (2)
1781 Xterm checks at startup, and shows an active icon only
1782 for window managers which it can identify and which are
1783 known to support the feature. These are fvwm (full
1784 support), and window maker (limited). A few other
1785 windows managers (such as twm and ctwm) support active
1786 icons, but do not support the extensions which allow
1787 xterm to identify the window manager.
1788
1789 allowBoldFonts (class AllowBoldFonts)
1790 When set to “false”, xterm will not use bold fonts. This
1791 overrides both the alwaysBoldMode and the boldMode resources.
1792
1793 allowC1Printable (class AllowC1Printable)
1794 If true, overrides the mapping of C1 controls (codes 128–159)
1795 to make them be treated as if they were printable characters.
1796 Although this corresponds to no particular standard, some users
1797 insist it is a VT100. The default is “false”.
1798
1799 allowColorOps (class AllowColorOps)
1800 Specifies whether control sequences that set/query the dynamic
1801 colors should be allowed. ANSI colors are unaffected by this
1802 resource setting. The default is “true”.
1803
1804 allowFontOps (class AllowFontOps)
1805 Specifies whether control sequences that set/query the font
1806 should be allowed. The default is “true”.
1807
1808 allowMouseOps (class AllowMouseOps)
1809 Specifies whether control sequences that enable xterm to send
1810 escape sequences to the host on mouse-clicks and movement. The
1811 default is “true”.
1812
1813 allowPasteControls (class AllowPasteControls)
1814 If true, allow control characters such as BEL and CAN to be
1815 pasted. Formatting characters (tab, newline) are normally
1816 allowed, unless suppressed via the disallowedPasteControls
1817 resource. Other C0 control characters are suppressed unless
1818 this resource is enabled. The exact set of control characters
1819 (C0 and C1) depends upon whether UTF-8 encoding is used, as
1820 well as the allowC1Printable and disallowedPasteControls
1821 resources. The default is “false”.
1822
1823 allowScrollLock (class AllowScrollLock)
1824 Specifies whether control sequences that set/query the Scroll
1825 Lock key should be allowed, as well as whether the Scroll Lock
1826 key responds to user's keypress. The default is “false”.
1827
1828 When this feature is enabled, xterm will sense the state of the
1829 Scroll Lock key each time it acquires focus. Pressing the
1830 Scroll Lock key toggles xterm's internal state, as well as
1831 toggling the associated LED. While the Scroll Lock is active,
1832 xterm attempts to keep a viewport on the same set of lines. If
1833 the current viewport is scrolled past the limit set by the
1834 saveLines resource, then Scroll Lock has no further effect.
1835
1836 The reason for setting the default to “false” is to avoid user
1837 surprise. This key is generally unused in keyboard
1838 configurations, and has not acquired a standard meaning even
1839 when it is used in that manner. Consequently, users have
1840 assigned it for ad hoc purposes.
1841
1842 See also the autoScrollLock resource.
1843
1844 allowSendEvents (class AllowSendEvents)
1845 Specifies whether or not synthetic key and button events
1846 (generated using the X protocol SendEvent request) should be
1847 interpreted or discarded. The default is “false” meaning they
1848 are discarded. Note that allowing such events would create a
1849 very large security hole, therefore enabling this resource
1850 forcefully disables the allowXXXOps resources. The default is
1851 “false”.
1852
1853 allowTcapOps (class AllowTcapOps)
1854 Specifies whether control sequences that query the terminal's
1855 notion of its function-key strings, as termcap or terminfo
1856 capabilities should be allowed. The default is “true”.
1857
1858 A few programs, e.g., vim, use this feature to get an accurate
1859 description of the terminal's capabilities, independent of the
1860 termcap/terminfo setting:
1861
1862 • Xterm can tell the querying program how many colors it
1863 supports. This is a constant, depending on how it is
1864 compiled, typically 16. It does not change if you alter
1865 resource settings, e.g., the boldColors resource.
1866
1867 • Xterm can tell the querying program what strings are sent
1868 by modified (shift-, control-, alt-) function- and keypad-
1869 keys. Reporting control- and alt-modifiers is a feature
1870 that relies on the ncurses extended naming.
1871
1872 allowTitleOps (class AllowTitleOps)
1873 Specifies whether control sequences that modify the window
1874 title or icon name should be allowed. The default is “true”.
1875
1876 allowWindowOps (class AllowWindowOps)
1877 Specifies whether extended window control sequences (as used in
1878 dtterm) should be allowed. These include several control
1879 sequences which manipulate the window size or position, as well
1880 as reporting these values and the title or icon name. Each of
1881 these can be abused in a script; curiously enough most terminal
1882 emulators that implement these restrict only a small part of
1883 the repertoire. For fine-tuning, see disallowedWindowOps. The
1884 default is “false”.
1885
1886 altIsNotMeta (class AltIsNotMeta)
1887 If “true”, treat the Alt-key as if it were the Meta-key. Your
1888 keyboard may happen to be configured so they are the same. But
1889 if they are not, this allows you to use the same prefix- and
1890 shifting operations with the Alt-key as with the Meta-key. See
1891 altSendsEscape and metaSendsEscape. The default is “false”.
1892
1893 altSendsEscape (class AltSendsEscape)
1894 This is an additional keyboard operation that may be processed
1895 after the logic for metaSendsEscape. It is only available if
1896 the altIsNotMeta resource is set.
1897
1898 • If “true”, Alt characters (a character combined with the
1899 modifier associated with left/right Alt-keys) are converted
1900 into a two-character sequence with the character itself
1901 preceded by ESC. This applies as well to function key
1902 control sequences, unless xterm sees that Alt is used in
1903 your key translations.
1904
1905 • If “false”, Alt characters input from the keyboard cause a
1906 shift to 8-bit characters (just like metaSendsEscape). By
1907 combining the Alt- and Meta-modifiers, you can create
1908 corresponding combinations of ESC-prefix and 8-bit
1909 characters.
1910
1911 The default is “False”. Xterm provides a menu option for
1912 toggling this resource.
1913
1914 alternateScroll (class ScrollCond)
1915 If “true”, the scroll-back and scroll-forw actions send
1916 cursor-up and -down keys when xterm is displaying the alternate
1917 screen. The default is “false”.
1918
1919 The alternateScroll state can also be set using a control
1920 sequence.
1921
1922 alwaysBoldMode (class AlwaysBoldMode)
1923 Specifies whether xterm should check if the normal and bold
1924 fonts are distinct before deciding whether to use overstriking
1925 to simulate bold fonts. If this resource is true, xterm does
1926 not make the check for distinct fonts when deciding how to
1927 handle the boldMode resource. The default is “false”.
1928
1929 boldMode alwaysBoldMode Comparison Action
1930 ────────────────────────────────────────────────────
1931 false false ignored use font
1932 false true ignored use font
1933 true false same overstrike
1934 true false different use font
1935 true true ignored overstrike
1936
1937 This resource is used only for bitmap fonts:
1938
1939 • When using bitmap fonts, it is possible that the font
1940 server will approximate the bold font by rescaling it from
1941 a different font size than expected. The alwaysBoldMode
1942 resource allows the user to override the (sometimes poor)
1943 resulting bold font with overstriking (which is at least
1944 consistent).
1945
1946 • The problem does not occur with TrueType fonts (though
1947 there can be other unnecessary issues such as different
1948 coverage of the normal and bold fonts).
1949
1950 As an alternative, setting the allowBoldFonts resource to false
1951 overrides both the alwaysBoldMode and the boldMode resources.
1952
1953 alwaysHighlight (class AlwaysHighlight)
1954 Specifies whether or not xterm should always display a
1955 highlighted text cursor. By default (if this resource is
1956 false), a hollow text cursor is displayed whenever the pointer
1957 moves out of the window or the window loses the input focus.
1958 The default is “false”.
1959
1960 alwaysUseMods (class AlwaysUseMods)
1961 Override the numLock resource, telling xterm to use the Alt and
1962 Meta modifiers to construct parameters for function key
1963 sequences even if those modifiers appear in the translations
1964 resource. Normally xterm checks if Alt or Meta is used in a
1965 translation that would conflict with function key modifiers,
1966 and will ignore these modifiers in that special case. The
1967 default is “false”.
1968
1969 answerbackString (class AnswerbackString)
1970 Specifies the string that xterm sends in response to an ENQ
1971 (control/E) character from the host. The default is a blank
1972 string, i.e., “”. A hardware VT100 implements this feature as
1973 a setup option.
1974
1975 appcursorDefault (class AppcursorDefault)
1976 If “true”, the cursor keys are initially in application mode.
1977 This is the same as the VT102 private DECCKM mode, The default
1978 is “false”.
1979
1980 appkeypadDefault (class AppkeypadDefault)
1981 If “true”, the keypad keys are initially in application mode.
1982 The default is “false”.
1983
1984 assumeAllChars (class AssumeAllChars)
1985 If “true”, this enables a special case in bitmap fonts to allow
1986 the font server to choose how to display missing glyphs. The
1987 default is “true”.
1988
1989 The reason for this resource is to help with certain quasi-
1990 automatically generated fonts (such as the ISO-10646-1 encoding
1991 of Terminus) which have incorrect font-metrics.
1992
1993 autoScrollLock (class AutoScrollLock)
1994 If “true”, xterm will maintain its viewport of displayed lines
1995 whenever displaying scrollback, as if allowScrollLock were
1996 enabled and the Scroll Lock key had been pressed. The default
1997 is “false”. This feature is only useful if the scrollTtyOutput
1998 resource is set to “false”.
1999
2000 autoWrap (class AutoWrap)
2001 Specifies whether or not auto-wraparound should be enabled.
2002 This is the same as the VT102 DECAWM. The default is “true”.
2003
2004 awaitInput (class AwaitInput)
2005 Specifies whether or not xterm uses a 50 millisecond timeout to
2006 await input (i.e., to support the Xaw3d arrow scrollbar). The
2007 default is “false”.
2008
2009 backarrowKey (class BackarrowKey)
2010 Specifies whether the backarrow key transmits a backspace (8)
2011 or delete (127) character. This corresponds to the DECBKM
2012 control sequence. A “true” value specifies backspace. The
2013 default is “False”. Pressing the control key toggles this
2014 behavior.
2015
2016 background (class Background)
2017 Specifies the color to use for the background of the window.
2018 The default is “XtDefaultBackground”.
2019
2020 bellIsUrgent (class BellIsUrgent)
2021 Specifies whether to set the Urgency hint for the window
2022 manager when making a bell sound. The default is “false”.
2023
2024 bellOnReset (class BellOnReset)
2025 Specifies whether to sound a bell when doing a hard reset. The
2026 default is “true”.
2027
2028 bellSuppressTime (class BellSuppressTime)
2029 Number of milliseconds after a bell command is sent during
2030 which additional bells will be suppressed. Default is 200. If
2031 set non-zero, additional bells will also be suppressed until
2032 the server reports that processing of the first bell has been
2033 completed; this feature is most useful with the visible bell.
2034
2035 boldColors (class ColorMode)
2036 Specifies whether to combine bold attribute with colors like
2037 the IBM PC, i.e., map colors 0 through 7 to colors 8 through
2038 15. These normally are the brighter versions of the first 8
2039 colors, hence bold. The default is “true”.
2040
2041 boldFont (class BoldFont)
2042 Specifies the name of the bold font to use instead of
2043 overstriking. There is no default for this resource.
2044
2045 This font must be the same height and width as the normal font,
2046 otherwise it is ignored. If only one of the normal or bold
2047 fonts is specified, it will be used as the normal font and the
2048 bold font will be produced by overstriking this font.
2049
2050 See also the discussion of boldMode and alwaysBoldMode
2051 resources.
2052
2053 boldMode (class BoldMode)
2054 This specifies whether or not text with the bold attribute
2055 should be overstruck to simulate bold fonts if the resolved
2056 bold font is the same as the normal font. It may be desirable
2057 to disable bold fonts when color is being used for the bold
2058 attribute.
2059
2060 Note that xterm has one bold font which you may set explicitly.
2061 Xterm attempts to derive a bold font for the other font
2062 selections (font1 through font7). If it cannot find a bold
2063 font, it will use the normal font. In each case (whether the
2064 explicit resource or the derived font), if the normal and bold
2065 fonts are distinct, this resource has no effect. The default
2066 is “true”.
2067
2068 See the alwaysBoldMode resource which can modify the behavior
2069 of this resource.
2070
2071 Although xterm attempts to derive a bold font for other font
2072 selections, the font server may not cooperate. Since X11R6,
2073 bitmap fonts have been scaled. The font server claims to
2074 provide the bold font that xterm requests, but the result is
2075 not always readable. XFree86 introduced a feature which can be
2076 used to suppress the scaling. In the X server's configuration
2077 file (e.g., “/etc/X11/xorg.conf”), you can add “:unscaled” to
2078 the end of the directory specification for the “misc” fonts,
2079 which comprise the fixed-pitch fonts that are used by xterm.
2080 For example
2081
2082 FontPath "/usr/share/X11/fonts/misc/"
2083
2084 would become
2085
2086 FontPath "/usr/share/X11/fonts/misc/:unscaled"
2087
2088 Depending on your configuration, the font server may have its
2089 own configuration file. The same “:unscaled” can be added to
2090 its configuration file at the end of the directory
2091 specification for “misc”.
2092
2093 The bitmap scaling feature is also used by xterm to implement
2094 VT102 double-width and double-height characters.
2095
2096 brokenLinuxOSC (class BrokenLinuxOSC)
2097 If true, xterm applies a workaround to ignore malformed control
2098 sequences that a Linux script might send. Compare the palette
2099 control sequences documented in console_codes with ECMA-48.
2100 The default is “true”.
2101
2102 brokenSelections (class BrokenSelections)
2103 If true, xterm in 8-bit mode will interpret STRING selections
2104 as carrying text in the current locale's encoding. Normally
2105 STRING selections carry ISO-8859-1 encoded text. Setting this
2106 resource to “true” violates the ICCCM; it may, however, be
2107 useful for interacting with some broken X clients. The default
2108 is “false”.
2109
2110 brokenStringTerm (class BrokenStringTerm)
2111 provides a work-around for some ISDN routers which start an
2112 application control string without completing it. Set this to
2113 “true” if xterm appears to freeze when connecting. The default
2114 is “false”.
2115
2116 Xterm's state parser recognizes several types of control
2117 strings which can contain text, e.g.,
2118
2119 APC (Application Program Command),
2120 DCS (Device Control String),
2121 OSC (Operating System Command),
2122 PM (Privacy Message), and
2123 SOS (Start of String),
2124
2125 Each should end with a string-terminator (a special character
2126 which cannot appear in these strings). Ordinary control
2127 characters found within the string are not ignored; they are
2128 processed without interfering with the process of accumulating
2129 the control string's content. Xterm recognizes these controls
2130 in all modes, although some of the functions may be suppressed
2131 after parsing the control.
2132
2133 When enabled, this feature allows the user to exit from an
2134 unterminated control string when any of these ordinary control
2135 characters are found:
2136
2137 control/D (used as an end of file in many shells),
2138 control/H (backspace),
2139 control/I (tab-feed),
2140 control/J (line feed aka newline),
2141 control/K (vertical tab),
2142 control/L (form feed),
2143 control/M (carriage return),
2144 control/N (shift-out),
2145 control/O (shift-in),
2146 control/Q (XOFF),
2147 control/X (cancel)
2148
2149 c132 (class C132)
2150 Specifies whether or not the VT102 DECCOLM escape sequence,
2151 used to switch between 80 and 132 columns, should be honored.
2152 The default is “false”.
2153
2154 cacheDoublesize (class CacheDoublesize)
2155 Tells whether to cache double-sized fonts by xterm. Set this
2156 to zero to disable double-sized fonts altogether.
2157
2158 cdXtraScroll (class CdXtraScroll)
2159 Specifies whether xterm should scroll to a new page when
2160 clearing the whole screen. Like tiXtraScroll, the intent of
2161 this option is to provide a picture of the full-screen
2162 application's display on the scrollback before wiping out the
2163 text.
2164
2165 Xterm accepts either a keyword (ignoring case) or the number
2166 shown in parentheses:
2167
2168 false (0)
2169 nothing is added to the scrollback.
2170
2171 true (1)
2172 the current screen is added to the scrollback.
2173
2174 trim (2)
2175 the current screen is added to the scrollback, but
2176 repeated blank lines are trimmed (reduced to a single
2177 blank line).
2178
2179 The default for this resource is “false”.
2180
2181 charClass (class CharClass)
2182 Specifies comma-separated lists of character class bindings of
2183 the form
2184
2185 low[-high][:value].
2186
2187 These are used in determining which sets of characters should
2188 be treated the same when doing cut and paste. See the
2189 CHARACTER CLASSES section.
2190
2191 checksumExtension (class ChecksumExtension)
2192 DEC VT420 and up support a control sequence DECRQCRA which
2193 reports the checksum of the characters in a rectangle. Xterm
2194 supports this, with extensions that can be configured with bits
2195 of the checksumExtension:
2196
2197 0 do not negate the result.
2198
2199 1 do not report the VT100 video attributes.
2200
2201 2 do not omit checksum for blanks.
2202
2203 3 omit checksum for cells not explicitly initialized.
2204
2205 4 do not mask cell value to 8 bits or ignore combining
2206 characters.
2207
2208 5 do not mask cell value to 7 bits.
2209
2210 With the default value (0), xterm matches the behavior of DEC's
2211 terminals. To use all extensions, set all bits, “-1” for
2212 example.
2213
2214 cjkWidth (class CjkWidth)
2215 Specifies whether xterm should follow the traditional East
2216 Asian width convention. When turned on, characters with East
2217 Asian Ambiguous (A) category in UTR 11 have a column width of
2218 2. You may have to set this option to “true” if you have some
2219 old East Asian terminal based programs that assume that line-
2220 drawing characters have a column width of 2. If this resource
2221 is false, the mkWidth resource controls the choice between the
2222 system's wcwidth and xterm's built-in tables. The default is
2223 “false”.
2224
2225 color0 (class Color0)
2226
2227 color1 (class Color1)
2228
2229 color2 (class Color2)
2230
2231 color3 (class Color3)
2232
2233 color4 (class Color4)
2234
2235 color5 (class Color5)
2236
2237 color6 (class Color6)
2238
2239 color7 (class Color7)
2240 These specify the colors for the ISO-6429 extension. The
2241 defaults are, respectively, black, red3, green3, yellow3, a
2242 customizable dark blue, magenta3, cyan3, and gray90. The
2243 default shades of color are chosen to allow the colors 8–15 to
2244 be used as brighter versions.
2245
2246 color8 (class Color8)
2247
2248 color9 (class Color9)
2249
2250 color10 (class Color10)
2251
2252 color11 (class Color11)
2253
2254 color12 (class Color12)
2255
2256 color13 (class Color13)
2257
2258 color14 (class Color14)
2259
2260 color15 (class Color15)
2261 These specify the colors for the ISO-6429 extension if the bold
2262 attribute is also enabled. The default resource values are
2263 respectively, gray50, red, green, yellow, a customized light
2264 blue, magenta, cyan, and white.
2265
2266 color16 (class Color16)
2267
2268 through
2269
2270 color255 (class Color255)
2271 These specify the colors for the 256-color extension. The
2272 default resource values are for
2273
2274 • colors 16 through 231 to make a 6x6x6 color cube, and
2275
2276 • colors 232 through 255 to make a grayscale ramp.
2277
2278 Resources past color15 are available as a compile-time option.
2279 Due to a hardcoded limit in the X libraries on the total number
2280 of resources (to 400), the resources for 256-colors are omitted
2281 when wide-character support and luit are enabled. Besides
2282 inconsistent behavior if only part of the resources were
2283 allowed, determining the exact cutoff is difficult, and the X
2284 libraries tend to crash if the number of resources exceeds the
2285 limit. The color palette is still initialized to the same
2286 default values, and can be modified via control sequences.
2287
2288 On the other hand, the resource limit does permit including the
2289 entire range for 88-colors.
2290
2291 colorAttrMode (class ColorAttrMode)
2292 Specifies whether colorBD, colorBL, colorRV, and colorUL should
2293 override ANSI colors. If not, these are displayed only when no
2294 ANSI colors have been set for the corresponding position. The
2295 default is “false”.
2296
2297 colorBD (class ColorBD)
2298 This specifies the color to use to display bold characters if
2299 the “colorBDMode” resource is enabled. The default is
2300 “XtDefaultForeground”.
2301
2302 See also the veryBoldColors resource which allows combining
2303 bold and color.
2304
2305 colorBDMode (class ColorAttrMode)
2306 Specifies whether characters with the bold attribute should be
2307 displayed in color or as bold characters. Note that setting
2308 colorMode off disables all colors, including bold. The default
2309 is “false”.
2310
2311 colorBL (class ColorBL)
2312 This specifies the color to use to display blink characters if
2313 the “colorBLMode” resource is enabled. The default is
2314 “XtDefaultForeground”.
2315
2316 See also the veryBoldColors resource which allows combining
2317 underline and color.
2318
2319 colorBLMode (class ColorAttrMode)
2320 Specifies whether characters with the blink attribute should be
2321 displayed in color. Note that setting colorMode off disables
2322 all colors, including this. The default is “false”.
2323
2324 colorIT (class ColorIT)
2325 This specifies the color to use to display italic characters if
2326 the “colorITMode” resource is enabled. The default is
2327 “XtDefaultForeground”.
2328
2329 See also the veryBoldColors resource which allows combining
2330 attributes and color.
2331
2332 colorITMode (class ColorAttrMode)
2333 Specifies whether characters with the italic attribute should
2334 be displayed in color or as italic characters. The default is
2335 “false”.
2336
2337 Note that:
2338
2339 • Setting colorMode off disables all colors, including
2340 italic.
2341
2342 • The italicULMode resource overrides colorITMode.
2343
2344 colorInnerBorder (class ColorInnerBorder)
2345 Normally, xterm fills the VT100 window's inner border using the
2346 background color.
2347
2348 If the colorInnerBorder resource is enabled, at startup xterm
2349 will compare the borderColor and the window's background color.
2350 If those are different, xterm will use the borderColor resource
2351 to fill the inner border. Otherwise, it will use the window's
2352 background color.
2353
2354 The default is “false”.
2355
2356 colorMode (class ColorMode)
2357 Specifies whether or not recognition of ANSI (ISO-6429) color
2358 change escape sequences should be enabled. The default is
2359 “true”.
2360
2361 colorRV (class ColorRV)
2362 This specifies the color to use to display reverse characters
2363 if the “colorRVMode” resource is enabled. The default is
2364 “XtDefaultForeground”.
2365
2366 See also the veryBoldColors resource which allows combining
2367 reverse and color.
2368
2369 colorRVMode (class ColorAttrMode)
2370 Specifies whether characters with the reverse attribute should
2371 be displayed in color. Note that setting colorMode off
2372 disables all colors, including this. The default is “false”.
2373
2374 colorUL (class ColorUL)
2375 This specifies the color to use to display underlined
2376 characters if the “colorULMode” resource is enabled. The
2377 default is “XtDefaultForeground”.
2378
2379 See also the veryBoldColors resource which allows combining
2380 underline and color.
2381
2382 colorULMode (class ColorAttrMode)
2383 Specifies whether characters with the underline attribute
2384 should be displayed in color or as underlined characters. Note
2385 that setting colorMode off disables all colors, including
2386 underlining. The default is “false”.
2387
2388 combiningChars (class CombiningChars)
2389 Specifies the number of wide-characters which can be stored in
2390 a cell to overstrike (combine) with the base character of the
2391 cell. This can be set to values in the range 0 to 5. The
2392 default is “2”.
2393
2394 ctrlFKeys (class CtrlFKeys)
2395 In VT220 keyboard mode (see sunKeyboard resource), specifies
2396 the amount by which to shift F1-F12 given a control modifier
2397 (CTRL). This allows you to generate key symbols for F10-F20 on
2398 a Sun/PC keyboard. The default is “10”, which means that CTRL
2399 F1 generates the key symbol for F11.
2400
2401 curses (class Curses)
2402 Specifies whether or not the last column bug in more(1) should
2403 be worked around. See the -cu option for details. The default
2404 is “false”.
2405
2406 cursorBlink (class CursorBlink)
2407 Specifies whether to make the cursor blink. Xterm accepts
2408 either a keyword (ignoring case) or the number shown in
2409 parentheses:
2410
2411 false (0)
2412 The cursor will not blink, but may be combined with escape
2413 sequences according to the cursorBlinkXOR resource.
2414
2415 true (1)
2416 The cursor will blink, but may be combined with escape
2417 sequences according to the cursorBlinkXOR resource.
2418
2419 always (2)
2420 The cursor will always blink, ignoring escape sequences.
2421 The menu entry will be disabled.
2422
2423 never (3)
2424 The cursor will never blink, ignoring escape sequences. The
2425 menu entry will be disabled.
2426
2427 The default is “false”.
2428
2429 cursorBlinkXOR (class CursorBlinkXOR)
2430 Xterm uses two inputs to determine whether the cursor blinks:
2431
2432 • The cursorBlink resource (which can be altered with a menu
2433 entry).
2434
2435 • Control sequences (private mode 12 and DECSCUSR).
2436
2437 The cursorBlinkXOR resource determines how those inputs are
2438 combined:
2439
2440 false
2441 Xterm uses the logical-OR of the two variables. If either
2442 is set, xterm makes the cursor blink.
2443
2444 true
2445 Xterm uses the logical-XOR of the two variables. If only
2446 one is set, xterm makes the cursor blink.
2447
2448 The default is “true”.
2449
2450 cursorColor (class CursorColor)
2451 Specifies the color to use for the text cursor. The default is
2452 “XtDefaultForeground”. By default, xterm attempts to keep this
2453 color from being the same as the background color, since it
2454 draws the cursor by filling the background of a text cell. The
2455 same restriction applies to control sequences which may change
2456 this color.
2457
2458 Setting this resource overrides most of xterm's adjustments to
2459 cursor color. It will still use reverse-video to disallow some
2460 cases, such as a black cursor on a black background.
2461
2462 cursorOffTime (class CursorOffTime)
2463 Specifies the duration of the “off” part of the cursor blink
2464 cycle-time in milliseconds. The same timer is used for text
2465 blinking. The default is “300”.
2466
2467 cursorOnTime (class CursorOnTime)
2468 Specifies the duration of the “on” part of the cursor blink
2469 cycle-time, in milliseconds. The same timer is used for text
2470 blinking. The default is “600”.
2471
2472 cursorUnderLine (class CursorUnderLine)
2473 Specifies whether to make the cursor underlined or a box. The
2474 default is “false”.
2475
2476 cutNewline (class CutNewline)
2477 If “false”, triple clicking to select a line does not include
2478 the newline at the end of the line. If “true”, the Newline is
2479 selected. The default is “true”.
2480
2481 cutToBeginningOfLine (class CutToBeginningOfLine)
2482 If “false”, triple clicking to select a line selects only from
2483 the current word forward. If “true”, the entire line is
2484 selected. The default is “true”.
2485
2486 decGraphicsID (class DecGraphicsID)
2487 Allows a way to combine the graphics feature from certain DEC
2488 terminals (125, 240, 241, 330, 340 or 382) with other emulation
2489 levels which did not provide the graphics feature. As in
2490 decTerminalID, leading non-digit characters are ignored, e.g.,
2491 “vt340” and “340” are the same.
2492
2493 If the resource value is nonzero, xterm uses that emulation
2494 level when initializing the drawing region and decoding control
2495 sequences to draw graphics.
2496
2497 The default is “0”.
2498
2499 decTerminalID (class DecTerminalID)
2500 Specifies the emulation level (100=VT100, 220=VT220, etc.),
2501 used to determine the type of response to a DA control
2502 sequence. Leading non-digit characters are ignored, e.g.,
2503 “vt100” and “100” are the same. The default is “420”.
2504
2505 defaultString (class DefaultString)
2506 Specify the character (or string) which xterm will substitute
2507 when pasted text includes a character which cannot be
2508 represented in the current encoding. For instance, pasting
2509 UTF-8 text into a display of ISO-8859-1 characters will only be
2510 able to display codes 0–255, while UTF-8 text can include
2511 Unicode values above 255. The default is “#” (a single pound
2512 sign).
2513
2514 If the undisplayable text would be double-width, xterm will add
2515 a space after the “#” character, to give roughly the same
2516 layout on the screen as the original text.
2517
2518 deleteIsDEL (class DeleteIsDEL)
2519 Specifies what the Delete key on the editing keypad should send
2520 when pressed. The resource value is a string, evaluated as a
2521 boolean after startup. Xterm uses it in conjunction with the
2522 keyboardType resource:
2523
2524 • If the keyboard type is “default”, or “vt220” and the
2525 resource is either “true” or “maybe” send the VT220-style
2526 Remove escape sequence. Otherwise, send DEL (127).
2527
2528 • If the keyboard type is “legacy”, and the resource is
2529 “true” send DEL. Otherwise, send the Remove sequence.
2530
2531 • Otherwise, if the keyboard type is none of these special
2532 cases, send DEL (127).
2533
2534 The default is “Maybe”. The resource is allowed to be a non-
2535 boolean “maybe” so that the popup menu Delete is DEL entry does
2536 not override the keyboard type.
2537
2538 directColor (class DirectColor)
2539 Specifies whether to handle direct-color control sequences
2540 using the X server's available colors, or to approximate those
2541 using a color map with 256 entries. A “true” value enables the
2542 former. The default is “true”.
2543
2544 disallowedColorOps (class DisallowedColorOps)
2545 Specify which features will be disabled if allowColorOps is
2546 false. This is a comma-separated list of names. The default
2547 value is
2548 SetColor,GetColor,GetAnsiColor
2549
2550 The names are listed below. Xterm ignores capitalization, but
2551 they are shown in mixed-case for clarity.
2552
2553 SetColor
2554 Set a specific dynamic color.
2555
2556 GetColor
2557 Report the current setting of a given dynamic color.
2558
2559 GetAnsiColor
2560 Report the current setting of a given ANSI color (actually
2561 any of the colors set via ANSI-style controls).
2562
2563 disallowedFontOps (class DisallowedFontOps)
2564 Specify which features will be disabled if allowFontOps is
2565 false. This is a comma-separated list of names. The default
2566 value is
2567
2568 SetFont,GetFont
2569
2570 The names are listed below. Xterm ignores capitalization, but
2571 they are shown in mixed-case for clarity.
2572
2573 SetFont
2574 Set the specified font.
2575
2576 GetFont
2577 Report the specified font.
2578
2579 disallowedMouseOps (class DisallowedMouseOps)
2580 Specify which features will be disabled if allowMouseOps is
2581 false. This is a comma-separated list of names. The default
2582 value is “*” which matches all names. The names are listed
2583 below. Xterm ignores capitalization, but they are shown in
2584 mixed-case for clarity.
2585
2586 X10 The original X10 mouse protocol.
2587
2588 Locator
2589 DEC locator mode
2590
2591 VT200Click
2592 X11 mouse-clicks only.
2593
2594 VT200Hilite
2595 X11 mouse-clicks and highlighting.
2596
2597 AnyButton
2598 XFree86 xterm any-button mode sends button-clicks as well
2599 as motion events while the button is pressed.
2600
2601 AnyEvent
2602 XFree86 xterm any-event mode sends button-clicks as well
2603 as motion events whether or not a button is pressed.
2604
2605 FocusEvent
2606 Send FocusIn/FocusOut events.
2607
2608 Extended
2609 The first extension beyond X11 mouse protocol, this
2610 encodes the coordinates in UTF-8. It is deprecated in
2611 favor of SGR, but provided for compatibility.
2612
2613 SGR This is the recommended extension for mouse-coordinates
2614
2615 URXVT
2616 Like Extended, this is provided for compatibility.
2617
2618 AlternateScroll
2619 This overrides the alternateScroll resource.
2620
2621 disallowedPasteControls (class DisallowedPasteControls)
2622 Use this resource to disallow pasting specific C0 control
2623 characters when the allowPasteControls resource is false (i.e.,
2624 the default). This resource defines the set of control
2625 characters which cannot be pasted, converting each into a
2626 space. Other C0 controls are pasted without change.
2627
2628 The resource value is a comma-separated list of names. Xterm
2629 ignores capitalization. The default value is
2630
2631 BS,DEL,ENQ,EOT,ESC,NUL
2632
2633 The names are listed below:
2634
2635 C0 all ASCII control characters.
2636
2637 Individual C0 characters
2638 NUL, SOH, STX, ETX, EOT, ENQ, ACK, BEL, BS, HT, LF, VT,
2639 FF, CR, SO, SI, DLE, DC1, DC2, DC3, DC4, NAK, SYN, ETB,
2640 CAN, EM, SUB, ESC, FS, GS, RS, US
2641
2642 DEL ASCII delete
2643
2644 NL ASCII line-feed, i.e., “newline” is the same as LF.
2645
2646 disallowedTcapOps (class DisallowedTcapOps)
2647 Specify which features will be disabled if allowTcapOps is
2648 false. This is a comma-separated list of names. The default
2649 value is
2650
2651 SetTcap,GetTcap
2652
2653 The names are listed below. Xterm ignores capitalization, but
2654 they are shown in mixed-case for clarity.
2655
2656 SetTcap
2657 (not implemented)
2658
2659 GetTcap
2660 Report specified function- and other special keys.
2661
2662 disallowedWindowOps (class DisallowedWindowOps)
2663 Specify which features will be disabled if allowWindowOps is
2664 false. This is a comma-separated list of names, or (for the
2665 controls adapted from dtterm the operation number). The
2666 default value is
2667
2668 20,21,SetXprop,SetSelection
2669 (i.e., all except a few “dangerous” operations are allowed).
2670
2671 The names are listed below. Xterm ignores capitalization, but
2672 they are shown in mixed-case for clarity. Where a number can
2673 be used as an alternative, it is given in parentheses after the
2674 name.
2675
2676 GetChecksum
2677 Report checksum of characters in a rectangular region.
2678
2679 GetIconTitle (20)
2680 Report xterm window's icon label as a string.
2681
2682 GetScreenSizeChars (19)
2683 Report the size of the screen in characters as numbers.
2684
2685 GetSelection
2686 Report selection data as a base64 string.
2687
2688 GetWinPosition (13)
2689 Report xterm window position as numbers.
2690
2691 GetWinSizeChars (18)
2692 Report the size of the text area in characters as numbers.
2693
2694 GetWinSizePixels (14)
2695 Report xterm window in pixels as numbers.
2696
2697 GetWinState (11)
2698 Report xterm window state as a number.
2699
2700 GetWinTitle (21)
2701 Report xterm window's title as a string.
2702
2703 LowerWin (6)
2704 Lower the xterm window to the bottom of the stacking
2705 order.
2706
2707 MaximizeWin (9)
2708 Maximize window (i.e., resize to screen size).
2709
2710 FullscreenWin (10)
2711 Use full screen (i.e., resize to screen size, without
2712 window decorations).
2713
2714 MinimizeWin (2)
2715 Iconify window.
2716
2717 PopTitle (23)
2718 Pop title from internal stack.
2719
2720 PushTitle (22)
2721 Push title to internal stack.
2722
2723 RaiseWin (5)
2724 Raise the xterm window to the front of the stacking order.
2725
2726 RefreshWin (7)
2727 Refresh the xterm window.
2728
2729 RestoreWin (1)
2730 De-iconify window.
2731
2732 SetChecksum
2733 Modify algorithm for reporting checksum of characters in a
2734 rectangular region.
2735
2736 SetSelection
2737 Set selection data.
2738
2739 SetWinLines
2740 Resize to a given number of lines, at least 24.
2741
2742 SetWinPosition (3)
2743 Move window to given coordinates.
2744
2745 SetWinSizeChars (8)
2746 Resize the text area to given size in characters.
2747
2748 SetWinSizePixels (4)
2749 Resize the xterm window to given size in pixels.
2750
2751 SetXprop
2752 Set X property on top-level window.
2753
2754 dynamicColors (class DynamicColors)
2755 Specifies whether or not escape sequences to change colors
2756 assigned to different attributes are recognized.
2757
2758 eightBitControl (class EightBitControl)
2759 Specifies whether or not control sequences sent by the terminal
2760 should be eight-bit characters or escape sequences. The
2761 default is “false”.
2762
2763 eightBitInput (class EightBitInput)
2764 If “true”, Meta characters (a single-byte character combined
2765 with the Meta modifier key) input from the keyboard are
2766 presented as a single character, modified according to the
2767 eightBitMeta resource. If “false”, Meta characters are
2768 converted into a two-character sequence with the character
2769 itself preceded by ESC. The default is “true”.
2770
2771 The metaSendsEscape and altSendsEscape resources may override
2772 this feature. Generally keyboards do not have a key labeled
2773 “Meta”, but “Alt” keys are common, and they are conventionally
2774 used for “Meta”. If they were synonymous, it would have been
2775 reasonable to name this resource “altSendsEscape”, reversing
2776 its sense. For more background on this, see the meta(3x)
2777 function in curses.
2778
2779 Note that the Alt key is not necessarily the same as the Meta
2780 modifier. The xmodmap utility lists your key modifiers. X
2781 defines modifiers for shift, (caps) lock and control, as well
2782 as 5 additional modifiers which are generally used to configure
2783 key modifiers. Xterm inspects the same information to find the
2784 modifier associated with either Meta key (left or right), and
2785 uses that key as the Meta modifier. It also looks for the
2786 NumLock key, to recognize the modifier which is associated with
2787 that.
2788
2789 If your xmodmap configuration uses the same keycodes for Alt-
2790 and Meta-keys, xterm will only see the Alt-key definitions,
2791 since those are tested before Meta-keys. NumLock is tested
2792 first. It is important to keep these keys distinct; otherwise
2793 some of xterm's functionality is not available.
2794
2795 The eightBitInput resource is tested at startup time. If
2796 “true”, the xterm tries to put the terminal into 8-bit mode.
2797 If “false”, on startup, xterm tries to put the terminal into
2798 7-bit mode. For some configurations this is unsuccessful;
2799 failure is ignored. After startup, xterm does not change the
2800 terminal between 8-bit and 7-bit mode.
2801
2802 As originally implemented in X11, the resource value did not
2803 change after startup. However (since patch #216 in 2006) xterm
2804 can modify eightBitInput after startup via a control sequence.
2805 The corresponding terminfo capabilities smm (set meta mode) and
2806 rmm (reset meta mode) have been recognized by bash for some
2807 time. Interestingly enough, bash's notion of “meta mode”
2808 differs from the standard definition (in the terminfo manual),
2809 which describes the change to the eighth bit of a character.
2810 It happens that bash views “meta mode” as the ESC character
2811 that xterm puts before a character when a special meta key is
2812 pressed. bash's early documentation talks about the ESC
2813 character and ignores the eighth bit.
2814
2815 eightBitMeta (class EightBitMeta)
2816 This controls the way xterm modifies the eighth bit of a
2817 single-byte key when the eightBitInput resource is set. The
2818 default is “locale”.
2819
2820 The resource value is a string, evaluated as a boolean after
2821 startup.
2822
2823 false
2824 The key is sent unmodified.
2825
2826 locale
2827 The key is modified only if the locale uses eight-bit
2828 encoding.
2829
2830 true The key is sent modified.
2831
2832 never
2833 The key is always sent unmodified.
2834
2835 Except for the never choice, xterm honors the terminfo
2836 capabilities smm (set meta mode) and rmm (reset meta mode),
2837 allowing the feature to be turned on or off dynamically.
2838
2839 If eightBitMeta is enabled when the locale uses UTF-8, xterm
2840 encodes the value as UTF-8 (since patch #183 in 2003).
2841
2842 eightBitOutput (class EightBitOutput)
2843 Specifies whether or not eight-bit characters sent from the
2844 host should be accepted as is or stripped when printed. The
2845 default is “true”, which means that they are accepted as is.
2846
2847 eightBitSelectTypes (class EightBitSelectTypes)
2848 Override xterm's default selection target list (see
2849 SELECT/PASTE) for selections in normal (ISO-8859-1) mode. The
2850 default is an empty string, i.e., “”, which does not override
2851 anything.
2852
2853 eraseSavedLines (class EraseSavedLines)
2854 Specifies whether or not to allow xterm extended ED/DECSED
2855 control sequences to erase the saved-line buffer. The default
2856 is “true”.
2857
2858 faceName (class FaceName)
2859 Specify the pattern for scalable fonts selected from the
2860 FreeType library if support for that library was compiled into
2861 xterm. There is no default value.
2862
2863 One or more fonts can be specified, separated by commas. If
2864 prefixed with “x:” or “x11:” the specification applies to the
2865 XLFD font resource. A “xft:” prefix is accepted but
2866 unnecessary since a missing prefix for faceName means that it
2867 will be used for TrueType. For example,
2868
2869 XTerm*faceName: x:fixed,xft:Bitstream Vera Sans Mono
2870
2871 Two TrueType fonts can be specified in this way. The first is
2872 the primary font; the second acts as a manual override to the
2873 fontconfig fontset.
2874
2875 If no faceName resource is specified, or if there is no match
2876 for both TrueType normal and bold fonts, xterm uses the XLFD
2877 (bitmap) font and related resources.
2878
2879 It is possible to select suitable bitmap fonts using a script
2880 such as this:
2881
2882 #!/bin/sh
2883 FONT=`xfontsel -print`
2884 test -n "$FONT" && xfd -fn "$FONT"
2885
2886 However (even though xfd accepts a “-fa” option to denote
2887 FreeType fonts), xfontsel has not been similarly extended. As
2888 a workaround, you may try
2889
2890 fc-list :scalable=true:spacing=mono: family
2891
2892 to find a list of scalable fixed-pitch fonts which may be used
2893 for the faceName resource value.
2894
2895 faceNameDoublesize (class FaceNameDoublesize)
2896 Specify a double-width scalable font for cases where an
2897 application requires this, e.g., in CJK applications. There is
2898 no default value.
2899
2900 Like the faceName resource, this allows one or more comma-
2901 separated font specifications to be applied to the wide
2902 TrueType or XLFD fonts.
2903
2904 If the application uses double-wide characters and this
2905 resource is not given, xterm will use a scaled version of the
2906 font given by faceName.
2907
2908 faceSize (class FaceSize)
2909 Specify the pointsize for fonts selected from the FreeType
2910 library if support for that library was compiled into xterm.
2911 The default is “8.0” On the VT Fonts menu, this corresponds to
2912 the Default entry.
2913
2914 Although the default is “8.0”, this may not be the same as the
2915 pointsize for the default bitmap font, i.e., that assigned with
2916 the -fn option, or the font resource. The default value of
2917 faceSize is chosen to match the size of the “fixed” font,
2918 making switching between bitmap and TrueType fonts via the font
2919 menu give comparable sizes for the window. If your -fn option
2920 uses a different pointsize, you might want to adjust the
2921 faceSize resource to match.
2922
2923 You can specify the pointsize for TrueType fonts selected with
2924 the other size-related menu entries such as Medium, Huge, etc.,
2925 by using one of the following resource values. If you do not
2926 specify a value, they default to “0.0”, which causes xterm to
2927 use the ratio of font sizes from the corresponding bitmap font
2928 resources to obtain a TrueType pointsize.
2929
2930 If all of the faceSize resources are set, then xterm will use
2931 this information to determine the next smaller/larger TrueType
2932 font for the larger-vt-font() and smaller-vt-font() actions.
2933 If any are not set, xterm will use only the areas of the bitmap
2934 fonts.
2935
2936 faceSize1 (class FaceSize1)
2937 Specifies the pointsize of the first alternative font.
2938
2939 faceSize2 (class FaceSize2)
2940 Specifies the pointsize of the second alternative font.
2941
2942 faceSize3 (class FaceSize3)
2943 Specifies the pointsize of the third alternative font.
2944
2945 faceSize4 (class FaceSize4)
2946 Specifies the pointsize of the fourth alternative font.
2947
2948 faceSize5 (class FaceSize5)
2949 Specifies the pointsize of the fifth alternative font.
2950
2951 faceSize6 (class FaceSize6)
2952 Specifies the pointsize of the sixth alternative font.
2953
2954 faceSize7 (class FaceSize7)
2955 Specifies the pointsize of the seventh alternative font.
2956
2957 faintIsRelative (class FaintIsRelative)
2958 Faint colors are derived from the current text color, e.g., the
2959 ANSI colors, by scaling the red, green and blue components.
2960 Use this resource to specify whether that is done relative to
2961 the current background color, or as an absolute value. The
2962 default is “false”.
2963
2964 fastScroll (class FastScroll)
2965 Modifies the effect of jump scroll (jumpScroll) by suppressing
2966 screen refreshes for the special case when output to the screen
2967 has completely shifted the contents off-screen. For instance,
2968 cat'ing a large file to the screen does this.
2969
2970 font (class Font)
2971 Specifies the name of the normal font. The default is “fixed”.
2972
2973 See the discussion of the locale resource, which describes how
2974 this font may be overridden.
2975
2976 NOTE: some resource files use patterns such as
2977
2978 *font: fixed
2979
2980 which are overly broad, affecting both
2981
2982 xterm.vt100.font
2983
2984 and
2985
2986 xterm.vt100.utf8Fonts.font
2987
2988 which is probably not what you intended.
2989
2990 font1 (class Font1)
2991 Specifies the name of the first alternative font, corresponding
2992 to “Unreadable” in the standard menu.
2993
2994 font2 (class Font2)
2995 Specifies the name of the second alternative font,
2996 corresponding to “Tiny” in the standard menu.
2997
2998 font3 (class Font3)
2999 Specifies the name of the third alternative font, corresponding
3000 to “Small” in the standard menu.
3001
3002 font4 (class Font4)
3003 Specifies the name of the fourth alternative font,
3004 corresponding to “Medium” in the standard menu.
3005
3006 font5 (class Font5)
3007 Specifies the name of the fifth alternative font, corresponding
3008 to “Large” in the standard menu.
3009
3010 font6 (class Font6)
3011 Specifies the name of the sixth alternative font, corresponding
3012 to “Huge” in the standard menu.
3013
3014 font7 (class Font7)
3015 Specifies the name of the seventh alternative font,
3016 corresponding to “Enormous” in the standard menu.
3017
3018 fontDoublesize (class FontDoublesize)
3019 Specifies whether xterm should attempt to use font scaling to
3020 draw double-sized characters. Some older font servers cannot
3021 do this properly, will return misleading font metrics. The
3022 default is “true”. If disabled, xterm will simulate double-
3023 sized characters by drawing normal characters with spaces
3024 between them.
3025
3026 fontWarnings (class FontWarnings)
3027 Specify whether xterm should report an error if it fails to
3028 load a font:
3029
3030 0 Never report an error (though the X libraries may).
3031
3032 1 Report an error if the font name was given as a resource
3033 setting.
3034
3035 2 Always report an error on failure to load a font.
3036
3037 The default is “1”.
3038
3039 forceBoxChars (class ForceBoxChars)
3040 Specifies whether xterm should assume the normal and bold fonts
3041 have VT100 line-drawing characters:
3042
3043 • The fixed-pitch ISO-8859-*-encoded fonts used by xterm
3044 normally have the VT100 line-drawing glyphs in cells 1–31.
3045 Other fixed-pitch fonts may be more attractive, but lack
3046 these glyphs.
3047
3048 • When using an ISO-10646-1 font and the wideChars resource
3049 is true, xterm uses the Unicode glyphs which match the
3050 VT100 line-drawing glyphs.
3051
3052 If “false”, xterm checks for missing glyphs in the font and
3053 makes line-drawing characters directly as needed. If “true”,
3054 xterm assumes the font does not contain the line-drawing
3055 characters, and draws them directly. The default is “false”.
3056
3057 The VT100 line-drawing character set (also known as the DEC
3058 Special Character and Line Drawing Set) is shown in this table.
3059 It includes a few special characters which are not used for
3060 drawing lines:
3061
3062 Cell Unicode Description
3063 ────────────────────────────────────────────────────────────
3064 0 U+25AE black vertical rectangle
3065 1 U+25C6 black diamond
3066 2 U+2592 medium shade
3067 3 U+2409 symbol for horizontal tabulation
3068 4 U+240C symbol for form feed
3069 5 U+240D symbol for carriage return
3070 6 U+240A symbol for line feed
3071 7 U+00B0 degree sign
3072 8 U+00B1 plus-minus sign
3073 9 U+2424 symbol for newline
3074 10 U+240B symbol for vertical tabulation
3075 11 U+2518 box drawings light up and left
3076 12 U+2510 box drawings light down and left
3077 13 U+250C box drawings light down and right
3078 14 U+2514 box drawings light up and right
3079 15 U+253C box drawings light vertical and horizontal
3080 16 U+23BA box drawings scan 1
3081 17 U+23BB box drawings scan 3
3082 18 U+2500 box drawings light horizontal
3083 19 U+23BC box drawings scan 7
3084 20 U+23BD box drawings scan 9
3085 21 U+251C box drawings light vertical and right
3086 22 U+2524 box drawings light vertical and left
3087 23 U+2534 box drawings light up and horizontal
3088 24 U+252C box drawings light down and horizontal
3089 25 U+2502 box drawings light vertical
3090 26 U+2264 less-than or equal to
3091 27 U+2265 greater-than or equal to
3092 28 U+03C0 greek small letter pi
3093 29 U+2260 not equal to
3094 30 U+00A3 pound sign
3095 31 U+00B7 middle dot
3096 ────────────────────────────────────────────────────────────
3097
3098 forcePackedFont (class ForcePackedFont)
3099 Specifies whether xterm should use the maximum or minimum glyph
3100 width when displaying using a bitmap font. Use the maximum
3101 width to help with proportional fonts. The default is “true”,
3102 denoting the minimum width.
3103
3104 forceXftHeight (class ForceXftHeight)
3105 Specifies whether xterm should use the given font metrics for
3106 TrueType fonts, or amend the ascent/descent to total no more
3107 than the given font-height. This optional feature is used to
3108 work around inconsistencies in FreeType's rounding computation.
3109 The default is “false”, denoting the given metrics.
3110
3111 foreground (class Foreground)
3112 Specifies the color to use for displaying text in the window.
3113 Setting the class name instead of the instance name is an easy
3114 way to have everything that would normally appear in the text
3115 color change color. The default is “XtDefaultForeground”.
3116
3117 formatOtherKeys (class FormatOtherKeys)
3118 Overrides the format of the escape sequence used to report
3119 modified keys with the modifyOtherKeys resource.
3120
3121 0 send modified keys as parameters for function-key 27
3122 (default).
3123
3124 1 send modified keys as parameters for CSI u.
3125
3126 freeBoldBox (class FreeBoldBox)
3127 Specifies whether xterm should assume the bounding boxes for
3128 normal and bold fonts are compatible. If “false”, xterm
3129 compares them and will reject choices of bold fonts that do not
3130 match the size of the normal font. The default is “false”,
3131 which means that the comparison is performed.
3132
3133 geometry (class Geometry)
3134 Specifies the preferred size and position of the VTxxx window.
3135 There is no default for this resource.
3136
3137 highlightColor (class HighlightColor)
3138 Specifies the color to use for the background of selected
3139 (highlighted) text. If not specified (i.e., matching the
3140 default foreground), reverse video is used. The default is
3141 “XtDefaultForeground”.
3142
3143 highlightColorMode (class HighlightColorMode)
3144 Specifies whether xterm should use highlightTextColor and
3145 highlightColor to override the reversed foreground/background
3146 colors in a selection. The default is unspecified: at startup,
3147 xterm checks if those resources are set to something other than
3148 the default foreground and background colors. Setting this
3149 resource disables the check.
3150
3151 The following table shows the interaction of the highlighting
3152 resources, abbreviated as shown to fit in this page:
3153
3154 HCM
3155 highlightColorMode
3156
3157 HR highlightReverse
3158
3159 HBG
3160 highlightColor
3161
3162 HFG
3163 highlightTextColor
3164
3165 HCM HR HBG HFG Highlight
3166 ────────────────────────────────────────────────
3167 false false default default bg/fg
3168 false false default set bg/fg
3169 false false set default fg/HBG
3170 false false set set fg/HBG
3171 ────────────────────────────────────────────────
3172 false true default default bg/fg
3173 false true default set bg/fg
3174 false true set default fg/HBG
3175 false true set set fg/HBG
3176 ────────────────────────────────────────────────
3177 true false default default bg/fg
3178 true false default set HFG/fg
3179 true false set default bg/HBG
3180 true false set set HFG/HBG
3181 ────────────────────────────────────────────────
3182 true true default default bg/fg
3183 true true default set HFG/fg
3184 true true set default fg/HBG
3185 true true set set HFG/HBG
3186 ────────────────────────────────────────────────
3187 default false default default bg/fg
3188 default false default set bg/fg
3189 default false set default fg/HBG
3190 default false set set HFG/HBG
3191 ────────────────────────────────────────────────
3192 default true default default bg/fg
3193 default true default set bg/fg
3194 default true set default fg/HBG
3195 default true set set HFG/HBG
3196 ────────────────────────────────────────────────
3197
3198 highlightReverse (class HighlightReverse)
3199 Specifies whether xterm should reverse the selection foreground
3200 and background colors when selecting text with reverse-video
3201 attribute. This applies only to the highlightColor and
3202 highlightTextColor resources, e.g., to match the color scheme
3203 of xwsh. If “true”, xterm reverses the colors, If “false”,
3204 xterm does not reverse colors, The default is “true”.
3205
3206 highlightSelection (class HighlightSelection)
3207 Tells xterm whether to highlight all of the selected positions,
3208 or only the selected text:
3209
3210 • If “false”, selecting with the mouse highlights all
3211 positions on the screen between the beginning of the
3212 selection and the current position.
3213
3214 • If “true”, xterm highlights only the positions that contain
3215 text that can be selected.
3216
3217 The default is “false”.
3218
3219 Depending on the way your applications write to the screen,
3220 there may be trailing blanks on a line. Xterm stores data as
3221 it is shown on the screen. Erasing the display changes the
3222 internal state of each cell so it is not considered a blank for
3223 the purpose of selection. Blanks written since the last erase
3224 are selectable. If you do not wish to have trailing blanks in
3225 a selection, use the trimSelection resource.
3226
3227 highlightTextColor (class HighlightTextColor)
3228 Specifies the color to use for the foreground of selected
3229 (highlighted) text. If not specified (i.e., matching the
3230 default background), reverse video is used. The default is
3231 “XtDefaultBackground”.
3232
3233 hpLowerleftBugCompat (class HpLowerleftBugCompat)
3234 Specifies whether to work around a bug in HP's xdb, which
3235 ignores termcap and always sends ESC F to move to the lower
3236 left corner. “true” causes xterm to interpret ESC F as a
3237 request to move to the lower left corner of the screen. The
3238 default is “false”.
3239
3240 i18nSelections (class I18nSelections)
3241 If false, xterm will not request the targets COMPOUND_TEXT or
3242 TEXT. The default is “true”. It may be set to false in order
3243 to work around ICCCM violations by other X clients.
3244
3245 iconBorderColor (class BorderColor)
3246 Specifies the border color for the active icon window if this
3247 feature is compiled into xterm. Not all window managers will
3248 make the icon border visible.
3249
3250 iconBorderWidth (class BorderWidth)
3251 Specifies the border width for the active icon window if this
3252 feature is compiled into xterm. The default is “2”. Not all
3253 window managers will make the border visible.
3254
3255 iconFont (class IconFont)
3256 Specifies the font for the miniature active icon window, if
3257 this feature is compiled into xterm. The default is “nil2”.
3258
3259 indicatorFormat (class IndicatorFormat)
3260 When displaying the status line using the indicator mode (i.e.,
3261 selecting DECSSDT line type 1), format the status using this
3262 resource.
3263
3264 The default value of the resource displays the version of
3265 xterm, the cursor position and the time/date:
3266
3267 “%{version%} %{position%} %{unixtime%}”
3268
3269 If a “%” marker does not match any of the three special tokens
3270 used in the default resource setting, xterm uses strftime to
3271 interpret it.
3272
3273 initialFont (class InitialFont)
3274 Specifies which of the VT100 fonts to use initially. Values
3275 are the same as for the set-vt-font action. The default is
3276 “d”, i.e., “default”.
3277
3278 inputMethod (class InputMethod)
3279 Tells xterm which type of input method to use. There is no
3280 default method.
3281
3282 internalBorder (class BorderWidth)
3283 Specifies the number of pixels between the characters and the
3284 window border. The default is “2”.
3285
3286 italicULMode (class ColorAttrMode)
3287 Specifies whether characters with the underline attribute
3288 should be displayed in an italic font or as underlined
3289 characters. It is implemented only for TrueType fonts.
3290
3291 jumpScroll (class JumpScroll)
3292 Specifies whether or not jump scroll should be used. This
3293 corresponds to the VT102 DECSCLM private mode. The default is
3294 “true”. See fastScroll for a variation.
3295
3296 keepClipboard (class KeepClipboard)
3297 Specifies whether xterm will reuse the selection data which it
3298 copied to the clipboard rather than asking the clipboard for
3299 its current contents when told to provide the selection. The
3300 default is “false”.
3301
3302 If compiled into xterm, the menu entry Keep Clipboard allows
3303 you to change this at runtime.
3304
3305 keepSelection (class KeepSelection)
3306 Specifies whether xterm will keep the selection even after the
3307 selected area was touched by some output to the terminal. The
3308 default is “true”.
3309
3310 The menu entry Keep Selection allows you to change this at
3311 runtime.
3312
3313 keyboardDialect (class KeyboardDialect)
3314 Specifies the initial keyboard dialect, as well as the default
3315 value when the terminal is reset. The value given is the same
3316 as the final character in the control sequences which change
3317 character sets. The default is “B”, which corresponds to US
3318 ASCII.
3319
3320 limitFontsets (class LimitFontsets)
3321 Limits the number of TrueType fallback fonts (i.e., fontset)
3322 which can be tested. The default is “50”. No more than “255”
3323 will be scanned.
3324
3325 This limits the number of fallback fonts which xterm uses to
3326 display characters. Because TrueType fonts typically are
3327 small, xterm may open several fonts for good coverage, and may
3328 open additional fonts to obtain information. You can see which
3329 font-files xterm opens by setting the environment variable
3330 XFT_DEBUG to 3. The Xft library and xterm write this debugging
3331 trace to the standard output.
3332
3333 Set this to “0” to disable fallbacks entirely.
3334
3335 limitResize (class LimitResize)
3336 Limits resizing of the screen via control sequence to a given
3337 multiple of the display dimensions. The default is “1”.
3338
3339 limitResponse (class LimitResponse)
3340 Limits the buffer-size used when xterm replies to various
3341 control sequences. The default is “1024”. The minimum value
3342 is “256”.
3343
3344 locale (class Locale)
3345 Specifies how to use luit, an encoding converter between UTF-8
3346 and locale encodings. The resource value (ignoring case) may
3347 be:
3348
3349 true
3350 Xterm will use the encoding specified by the users'
3351 LC_CTYPE locale (i.e., LC_ALL, LC_CTYPE, or LANG variables)
3352 as far as possible. This is realized by always enabling
3353 UTF-8 mode and invoking luit in non-UTF-8 locales.
3354
3355 medium
3356 Xterm will follow users' LC_CTYPE locale only for UTF-8,
3357 east Asian, and Thai locales, where the encodings were not
3358 supported by conventional 8bit mode with changing fonts.
3359 For other locales, xterm will use conventional 8bit mode.
3360
3361 checkfont
3362 If mini-luit is compiled-in, xterm will check if a Unicode
3363 font has been specified. If so, it checks if the character
3364 encoding for the current locale is POSIX, Latin-1 or
3365 Latin-9, uses the appropriate mapping to support those with
3366 the Unicode font. For other encodings, xterm assumes that
3367 UTF-8 encoding is required.
3368
3369 false
3370 Xterm will use conventional 8bit mode or UTF-8 mode
3371 according to utf8 resource or -u8 option.
3372
3373 Any other value, e.g., “UTF-8” or “ISO8859-2”, is assumed to be
3374 an encoding name; luit will be invoked to support the encoding.
3375 The actual list of supported encodings depends on luit. The
3376 default is “medium”.
3377
3378 Regardless of your locale and encoding, you need an ISO-10646-1
3379 font to display the result. Your configuration may not include
3380 this font, or locale-support by xterm may not be needed.
3381
3382 At startup, xterm uses a mechanism equivalent to the
3383 load-vt-fonts(utf8Fonts, Utf8Fonts) action to load font name
3384 subresources of the VT100 widget. That is, resource patterns
3385 such as “*vt100.utf8Fonts.font” will be loaded, and (if this
3386 resource is enabled), override the normal fonts. If no
3387 subresources are found, the normal fonts such as “*vt100.font”,
3388 etc., are used.
3389
3390 For instance, you could have this in your resource file:
3391
3392 *VT100.font: 12x24
3393 *VT100.utf8Fonts.font:9x15
3394
3395 When started with a UTF-8 locale, xterm would use 9x15, but
3396 allow you to switch to the 12x24 font using the menu entry
3397 “UTF-8 Fonts”.
3398
3399 The resource files distributed with xterm use ISO-10646-1
3400 fonts, but do not rely on them unless you are using the locale
3401 mechanism.
3402
3403 localeFilter (class LocaleFilter)
3404 Specifies the file name for the encoding converter from/to
3405 locale encodings and UTF-8 which is used with the -lc option or
3406 locale resource. The help message shown by “xterm -help” lists
3407 the default value, which depends on your system configuration.
3408
3409 If the encoding converter requires command-line parameters, you
3410 can add those after the command, e.g.,
3411
3412 *localeFilter: xterm-filter -p
3413
3414 Alternatively, you may put those parameter within a shell
3415 script to execute the converter, and set this resource to point
3416 to the shell script.
3417
3418 When using a locale-filter, e.g., with the -e option, or the
3419 shell, xterm first tries passing control via that filter. If
3420 it fails, xterm will retry without the locale-filter. Xterm
3421 warns about the failure before retrying.
3422
3423 logFile (class Logfile)
3424 Specify the name for xterm's log file. If no name is
3425 specified, xterm will generate a name when logging is enabled,
3426 as described in the -l option.
3427
3428 logInhibit (class LogInhibit)
3429 If “true”, prevent the logging feature from being enabled,
3430 whether by the command-line option -l, or the menu entry Log to
3431 File. The default is “false”.
3432
3433 logging (class Logging)
3434 If “true”, (and if logInhibit is not set) enable the logging
3435 feature. This resource is set/updated by the -l option and the
3436 menu entry Log to File. The default is “false”.
3437
3438 loginShell (class LoginShell)
3439 Specifies whether or not the shell to be run in the window
3440 should be started as a login shell. The default is “false”.
3441
3442 marginBell (class MarginBell)
3443 Specifies whether or not the bell should be rung when the user
3444 types near the right margin. The default is “false”.
3445
3446 maxGraphicSize (class MaxGraphicSize)
3447 If xterm is configured to support ReGIS or SIXEL graphics, this
3448 resource controls the maximum size of a graph which can be
3449 displayed.
3450
3451 The default is “1000x1000” (given as width by height).
3452
3453 If the resource is “auto” then xterm will use the decGraphicsID
3454 resource (or decTerminalID if that is not set):
3455
3456 Result decGraphicsID
3457 ────────────────────────
3458 768x400 125
3459 800x460 240
3460 800x460 241
3461 800x480 330
3462 800x480 340
3463 860x750 382
3464 800x480 other
3465
3466 metaSendsEscape (class MetaSendsEscape)
3467 Tells xterm what to do with input-characters modified by Meta:
3468
3469 • If “true”, Meta characters (a character combined with the
3470 Meta modifier key) are converted into a two-character
3471 sequence with the character itself preceded by ESC. This
3472 applies as well to function key control sequences, unless
3473 xterm sees that Meta is used in your key translations.
3474
3475 • If “false”, Meta characters input from the keyboard are
3476 handled according to the eightBitInput resource.
3477
3478 The default is “True”.
3479
3480 mkSamplePass (class MkSamplePass)
3481 If mkSampleSize is nonzero, and mkWidth (and cjkWidth) are
3482 false, on startup xterm compares its built-in tables to the
3483 system's wide character width data to decide if it will use the
3484 system's data. It tests the first mkSampleSize character
3485 values, and allows up to mkSamplePass mismatches before the
3486 test fails. The default (for the allowed number of mismatches)
3487 is 655 (one percent of the default value for mkSampleSize).
3488
3489 mkSampleSize (class MkSampleSize)
3490 With mkSamplePass, this specifies a startup test used for
3491 initializing wide character width calculations. The default
3492 (number of characters to check) is 65536.
3493
3494 mkWidth (class MkWidth)
3495 Specifies whether xterm should use a built-in version of the
3496 wide character width calculation. See also the cjkWidth
3497 resource which can override this. The default is “false”.
3498
3499 Here is a summary of the resources which control the choice of
3500 wide character width calculation:
3501
3502 cjkWidth mkWidth Action
3503 ───────────────────────────────────────────────────────────────
3504 false false use system tables subject to mkSamplePass
3505 false true use built-in tables
3506 true false use built-in CJK tables
3507 true true use built-in CJK tables
3508
3509 To disable mkWidth, and use the system's tables, set both
3510 mkSampleSize and mkSamplePass to “0”. Doing that may make
3511 xterm more consistent with applications running in xterm, but
3512 may omit some font glyphs whose width correctly differs from
3513 the system's character tables.
3514
3515 modifyCursorKeys (class ModifyCursorKeys)
3516 Tells how to handle the special case where Control-, Shift-,
3517 Alt- or Meta-modifiers are used to add a parameter to the
3518 escape sequence returned by a cursor-key. The default is “2”:
3519
3520 -1 disables the feature.
3521
3522 0 uses the old/obsolete behavior, i.e., the modifier is the
3523 first parameter.
3524
3525 1 prefixes modified sequences with CSI.
3526
3527 2 forces the modifier to be the second parameter if it would
3528 otherwise be the first.
3529
3530 3 marks the sequence with a “>” to hint that it is private.
3531
3532 modifyFunctionKeys (class ModifyFunctionKeys)
3533 Tells how to handle the special case where Control-, Shift-,
3534 Alt- or Meta-modifiers are used to add a parameter to the
3535 escape sequence returned by a (numbered) function-key. The
3536 default is “2”. The resource values are similar to
3537 modifyCursorKeys:
3538
3539 -1 permits the user to use shift- and control-modifiers to
3540 construct function-key strings using the normal encoding
3541 scheme.
3542
3543 0 uses the old/obsolete behavior, i.e., the modifier is the
3544 first parameter.
3545
3546 1 prefixes modified sequences with CSI.
3547
3548 2 forces the modifier to be the second parameter if it would
3549 otherwise be the first.
3550
3551 3 marks the sequence with a “>” to hint that it is private.
3552
3553 If modifyFunctionKeys is zero, xterm uses Control- and Shift-
3554 modifiers to allow the user to construct numbered function-keys
3555 beyond the set provided by the keyboard:
3556
3557 Control
3558 adds the value given by the ctrlFKeys resource.
3559
3560 Shift
3561 adds twice the value given by the ctrlFKeys resource.
3562
3563 Control/Shift
3564 adds three times the value given by the ctrlFKeys
3565 resource.
3566
3567 modifyKeyboard (class ModifyKeyboard)
3568 Normally xterm makes a special case regarding modifiers (shift,
3569 control, etc.) to handle special keyboard layouts (legacy and
3570 vt220). This is done to provide compatible keyboards for DEC
3571 VT220 and related terminals that implement user-defined keys
3572 (UDK).
3573
3574 The bits of the resource value selectively enable modification
3575 of the given category when these keyboards are selected. The
3576 default is “0”:
3577
3578 0 The legacy/vt220 keyboards interpret only the Control-
3579 modifier when constructing numbered function-keys. Other
3580 special keys are not modified.
3581
3582 1 allows modification of the numeric keypad
3583
3584 2 allows modification of the editing keypad
3585
3586 4 allows modification of function-keys, overrides use of
3587 Shift-modifier for UDK.
3588
3589 8 allows modification of other special keys
3590
3591 modifyOtherKeys (class ModifyOtherKeys)
3592 Like modifyCursorKeys, tells xterm to construct an escape
3593 sequence for ordinary (i.e., “other”) keys (such as “2”) when
3594 modified by Shift-, Control-, Alt- or Meta-modifiers. This
3595 feature does not apply to special keys, i.e., cursor-, keypad-,
3596 function- or control-keys which are labeled on your keyboard.
3597 Those have key symbols which XKB identifies uniquely.
3598
3599 For example, this feature does not apply to special control-
3600 keys (e.g., Escape, Tab, Enter, Backspace) Other control keys
3601 (e.g., Control-I, Control-M, Control-H) may send escape
3602 sequences when this feature is enabled.
3603
3604 The default is “0”:
3605
3606 0 disables this feature.
3607
3608 1 enables this feature for keys except for those with well-
3609 known behavior, e.g., Tab, Backarrow and some special
3610 control character cases which are built into the X11
3611 library, e.g., Control-Space to make a NUL, or Control-3
3612 to make an Escape character.
3613
3614 Except for those special cases built into the X11 library,
3615 the Shift- and Control- modifiers are treated normally.
3616 The Alt- and Meta- modifiers do not cause xterm to send
3617 escape sequences. Those modifier keys are interpreted
3618 according to other resources, e.g., the metaSendsEscape
3619 resource.
3620
3621 2 enables this feature for keys including the exceptions
3622 listed. Xterm ignores the special cases built into the
3623 X11 library. Any shifted (modified) ordinary key sends an
3624 escape sequence. The Alt- and Meta- modifiers cause xterm
3625 to send escape sequences.
3626
3627 The Xterm FAQ has an extended discussion of this feature, with
3628 examples:
3629
3630 https://invisible-island.net/xterm/modified-keys.html
3631
3632 multiClickTime (class MultiClickTime)
3633 Specifies the maximum time in milliseconds between multi-click
3634 select events. The default is “250” milliseconds.
3635
3636 multiScroll (class MultiScroll)
3637 Specifies whether or not scrolling should be done
3638 asynchronously. The default is “false”.
3639
3640 nMarginBell (class Column)
3641 Specifies the number of characters from the right margin at
3642 which the margin bell should be rung, when enabled by the
3643 marginBell resource. The default is “10”.
3644
3645 nameKeymap (class NameKeymap)
3646 See the discussion of the keymap() action.
3647
3648 nextEventDelay (class NextEventDelay)
3649 Specifies a delay time in milliseconds before checking for new
3650 X events. The default is “1”.
3651
3652 numColorRegisters (class NumColorRegisters)
3653 If xterm is configured to support ReGIS or SIXEL graphics, this
3654 specifies the number of color-registers which are available.
3655
3656 If this resource is not specified, xterm uses a value
3657 determined by the decTerminalID resource:
3658
3659 Result decTerminalID
3660 ───────────────────────
3661 4 125
3662 4 240
3663 4 241
3664 4 330
3665 16 340
3666 2 382
3667 1024 other
3668
3669 numLock (class NumLock)
3670 If “true”, xterm checks if NumLock is used as a modifier (see
3671 xmodmap(1)). If so, this modifier is used to simplify the
3672 logic when implementing special NumLock for the sunKeyboard
3673 resource. Also (when sunKeyboard is false), similar logic is
3674 used to find the modifier associated with the left and right
3675 Alt keys. The default is “true”.
3676
3677 oldXtermFKeys (class OldXtermFKeys)
3678 If “true”, xterm will use old-style (X11R5) escape sequences
3679 for function keys F1 to F4, for compatibility with X Consortium
3680 xterm. Otherwise, it uses the VT100 codes for PF1 to PF4. The
3681 default is “false”.
3682
3683 Setting this resource has the same effect as setting the
3684 keyboardType to legacy. The keyboardType resource is the
3685 preferred mechanism for selecting this mode.
3686
3687 The old-style escape sequences resemble VT220 keys, but appear
3688 to have been invented for xterm in X11R4.
3689
3690 on2Clicks (class On2Clicks)
3691
3692 on3Clicks (class On3Clicks)
3693
3694 on4Clicks (class On4Clicks)
3695
3696 on5Clicks (class On5Clicks)
3697 Specify selection behavior in response to multiple mouse
3698 clicks. A single mouse click is always interpreted as
3699 described in the Selection Functions section (see POINTER
3700 USAGE). Multiple mouse clicks (using the button which
3701 activates the select-start action) are interpreted according to
3702 the resource values of on2Clicks, etc. The resource value can
3703 be one of these:
3704
3705 word
3706 Select a “word” as determined by the charClass resource.
3707 See the CHARACTER CLASSES section.
3708
3709 If the pointer is on a “word” then xterm searches back to
3710 the beginning of the word, and then to the end.
3711
3712 If the pointer is not on a “word” then the result depends on
3713 whether it is on whitespace (including a newline), or past
3714 the end of the line. In the latter case xterm may select a
3715 “word” beginning after the newline, if there is no
3716 additional whitespace.
3717
3718 line
3719 Select a line (counting wrapping).
3720
3721 group
3722 Select a group of adjacent lines (counting wrapping). The
3723 selection stops on a blank line, and does not extend outside
3724 the current page.
3725
3726 page
3727 Select all visible lines, i.e., the page.
3728
3729 all
3730 Select all lines, i.e., including the saved lines.
3731
3732 regex
3733 Select the best match for the POSIX extended regular
3734 expression (ERE) which follows in the resource value:
3735
3736 • Xterm matches the regular expression against a byte
3737 array for the entire (possibly wrapped) line. That byte
3738 array may be UTF-8 or ISO-8859-1, depending on the mode
3739 in which xterm is running.
3740
3741 • Xterm steps through each byte-offset in this array,
3742 keeping track of the best (longest) match. If more than
3743 one match ties for the longest length, the first is
3744 used.
3745
3746 Xterm does this to make it convenient to click anywhere
3747 in the area of interest and cause the regular expression
3748 to match the entire word, etc.
3749
3750 • The “^” and “$” anchors in a regular expression denote
3751 the ends of the entire line.
3752
3753 • If the regular expression contains backslashes “\” those
3754 should be escaped “\\” because the X libraries interpret
3755 backslashes in resource strings.
3756
3757 none
3758 No selection action is associated with this resource. Xterm
3759 interprets it as the end of the list. For example, you may
3760 use it to disable triple (and higher) clicking by setting
3761 on3Clicks to “none”.
3762
3763 The default values for on2Clicks and on3Clicks are “word” and
3764 “line”, respectively. There is no default value for on4Clicks
3765 or on5Clicks, making those inactive. On startup, xterm
3766 determines the maximum number of clicks by the onXClicks
3767 resource values which are set.
3768
3769 openIm (class OpenIm)
3770 Tells xterm whether to open the input method at startup. The
3771 default is “true”.
3772
3773 pointerColor (class PointerColor)
3774 Specifies the foreground color of the pointer. The default is
3775 “XtDefaultForeground”.
3776
3777 pointerColorBackground (class PointerColorBackground)
3778 Specifies the background color of the pointer. The default is
3779 “XtDefaultBackground”.
3780
3781 pointerFont (class PointerFont)
3782 Specifies the font to be used for the pointer. The shapes
3783 specified by pointerShape are glyphs in this font. The
3784 resource value default is cursor.
3785
3786 pointerMode (class PointerMode)
3787 Specifies when the pointer may be hidden as the user types. It
3788 will be redisplayed if the user moves the mouse, or clicks one
3789 of its buttons.
3790
3791 0 never
3792
3793 1 the application running in xterm has not activated mouse
3794 mode. This is the default.
3795
3796 2 always.
3797
3798 pointerShape (class Cursor)
3799 Specifies the name of the shape of the pointer. The default is
3800 “xterm”.
3801
3802 Other shapes can be selected. Here is a list of the “core”
3803 (i.e., standard) names extracted from <X11/cursorfont.h>:
3804
3805 X_cursor, arrow, based_arrow_down, based_arrow_up, boat,
3806 bogosity, bottom_left_corner, bottom_right_corner,
3807 bottom_side, bottom_tee, box_spiral, center_ptr, circle,
3808 clock, coffee_mug, cross, cross_reverse, crosshair,
3809 diamond_cross, dot, dotbox, double_arrow, draft_large,
3810 draft_small, draped_box, exchange, fleur, gobbler, gumby,
3811 hand1, hand2, heart, icon, iron_cross, left_ptr, left_side,
3812 left_tee, leftbutton, ll_angle, lr_angle, man,
3813 middlebutton, mouse, pencil, pirate, plus, question_arrow,
3814 right_ptr, right_side, right_tee, rightbutton, rtl_logo,
3815 sailboat, sb_down_arrow, sb_h_double_arrow, sb_left_arrow,
3816 sb_right_arrow, sb_up_arrow, sb_v_double_arrow, shuttle,
3817 sizing, spider, spraycan, star, target, tcross,
3818 top_left_arrow, top_left_corner, top_right_corner,
3819 top_side, top_tee, trek, ul_angle, umbrella, ur_angle,
3820 watch, xterm
3821
3822 If you are using a cursor theme, expect it to provide about a
3823 third of those names, while adding others.
3824
3825 popOnBell (class PopOnBell)
3826 Specifies whether the window would be raised when Control-G is
3827 received. The default is “false”.
3828
3829 If the window is iconified, this has no effect. However, the
3830 zIconBeep resource provides you with the ability to see which
3831 iconified windows have sounded a bell.
3832
3833 precompose (class Precompose)
3834 Tells xterm whether to precompose UTF-8 data into Normalization
3835 Form C, which combines commonly-used accents onto base
3836 characters. If it does not do this, accents are left as
3837 separate characters. The default is “true”.
3838
3839 preeditType (class PreeditType)
3840 Tells xterm which types of preedit (preconversion) string to
3841 display. The default is “OverTheSpot,Root”.
3842
3843 printAttributes (class PrintAttributes)
3844 Specifies whether to print graphic attributes along with the
3845 text. A real DEC VTxxx terminal will print the underline,
3846 highlighting codes but your printer may not handle these.
3847
3848 • “0” disables the attributes.
3849
3850 • “1” prints the normal set of attributes (bold, underline,
3851 inverse and blink) as VT100-style control sequences.
3852
3853 • “2” prints ANSI color attributes as well.
3854
3855 The default is “1”.
3856
3857 printFileImmediate (class PrintFileImmediate)
3858 When the print-immediate action is invoked, xterm prints the
3859 screen contents directly to a file. Set this resource to the
3860 prefix of the filename (a timestamp will be appended to the
3861 actual name).
3862
3863 The default is an empty string, i.e., “”, However, when the
3864 print-immediate action is invoked, if the string is empty, then
3865 “XTerm” is used.
3866
3867 printFileOnXError (class PrintFileOnXError)
3868 If xterm exits with an X error, e.g., your connection is broken
3869 when the server crashes, it can be told to write the contents
3870 of the screen to a file. To enable the feature, set this
3871 resource to the prefix of the filename (a timestamp will be
3872 appended to the actual name).
3873
3874 The default is an empty string, i.e., “”, which disables this
3875 feature. However, when the print-on-error action is invoked,
3876 if the string is empty, then “XTermError” is used.
3877
3878 These error codes are handled: ERROR_XERROR, ERROR_XIOERROR and
3879 ERROR_ICEERROR.
3880
3881 printModeImmediate (class PrintModeImmediate)
3882 When the print-immediate action is invoked, xterm prints the
3883 screen contents directly to a file. You can use the
3884 printModeImmediate resource to tell it to use escape sequences
3885 to reconstruct the video attributes and colors. This uses the
3886 same values as the printAttributes resource. The default is
3887 “0”.
3888
3889 printModeOnXError (class PrintModeOnXError)
3890 Xterm implements the printFileOnXError feature using the
3891 printer feature, although the output is written directly to a
3892 file. You can use the printModeOnXError resource to tell it to
3893 use escape sequences to reconstruct the video attributes and
3894 colors. This uses the same values as the printAttributes
3895 resource. The default is “0”.
3896
3897 printOptsImmediate (class PrintOptsImmediate)
3898 Specify the range of text which is printed to a file when the
3899 print-immediate action is invoked.
3900
3901 • If zero (0), then this selects the current (visible screen)
3902 plus the saved lines, except if the alternate screen is
3903 being used. In that case, only the alternate screen is
3904 selected.
3905
3906 • If nonzero, the bits of this resource value (checked in
3907 descending order) select the range:
3908
3909 8 selects the saved lines.
3910
3911 4 selects the alternate screen.
3912
3913 2 selects the normal screen.
3914
3915 1 selects the current screen, which can be either the
3916 normal or alternate screen.
3917
3918 The default is “9”, which selects the current visible screen
3919 plus saved lines, with no special case for the alternated
3920 screen.
3921
3922 printOptsOnXError (class PrintOptsOnXError)
3923 Specify the range of text which is printed to a file when the
3924 print-on-error action is invoked. The resource value is
3925 interpreted the same as in printOptsImmediate.
3926
3927 The default is “9”, which selects the current visible screen
3928 plus saved lines, with no special case for the alternated
3929 screen.
3930
3931 printerAutoClose (class PrinterAutoClose)
3932 If “true”, xterm will close the printer (a pipe) when the
3933 application switches the printer offline with a Media Copy
3934 command. The default is “false”.
3935
3936 printerCommand (class PrinterCommand)
3937 Specifies a shell command to which xterm will open a pipe when
3938 the first MC (Media Copy) command is initiated. The default is
3939 an empty string, i.e., “”. If the resource value is given as
3940 an empty string, the printer is disabled.
3941
3942 printerControlMode (class PrinterControlMode)
3943 Specifies the printer control mode. A “1” selects autoprint
3944 mode, which causes xterm to print a line from the screen when
3945
3946 • you move the cursor off that line with a line feed, form
3947 feed or vertical tab character, or
3948
3949 • an autowrap occurs.
3950
3951 Autoprint mode is overridden by printer controller mode (a
3952 “2”), which causes all of the output to be directed to the
3953 printer. The default is “0”.
3954
3955 printerExtent (class PrinterExtent)
3956 Controls whether a print page function will print the entire
3957 page (true), or only the portion within the scrolling margins
3958 (false). The default is “false”.
3959
3960 printerFormFeed (class PrinterFormFeed)
3961 Controls whether a form feed is sent to the printer at the end
3962 of a print page function. The default is “false”.
3963
3964 printerNewLine (class PrinterNewLine)
3965 Controls whether a newline is sent to the printer at the end of
3966 a print page function. The default is “true”.
3967
3968 privateColorRegisters (class PrivateColorRegisters)
3969 If xterm is configured to support ReGIS or SIXEL graphics, this
3970 controls whether xterm allocates separate color registers for
3971 each sixel device control string, e.g., for DECGCI. If not
3972 true, color registers are allocated only once, when the
3973 terminal is reset, and color changes in any graphic affect
3974 all graphics. The default is “true”.
3975
3976 quietGrab (class QuietGrab)
3977 Controls whether the cursor is repainted when NotifyGrab and
3978 NotifyUngrab event types are received during change of focus.
3979 The default is “false”.
3980
3981 regisDefaultFont (class RegisDefaultFont)
3982 If xterm is configured to support ReGIS graphics, this resource
3983 tells xterm which font to use if the ReGIS data does not
3984 specify one. No default value is specified; xterm accepts a
3985 TrueType font specification as in the faceName resource.
3986
3987 If no value is specified, xterm draws a bitmap indicating a
3988 missing character.
3989
3990 regisScreenSize (class RegisScreenSize)
3991 If xterm is configured to support ReGIS graphics, this resource
3992 tells xterm the default size (in pixels) for these graphics,
3993 which also sets the default coordinate space to [0,0] (upper-
3994 left) and [width,height] (lower-right).
3995
3996 The application using ReGIS may use the “A” option of the “S”
3997 command to adjust the coordinate space or change the
3998 addressable portion of the screen.
3999
4000 Xterm accepts a special resource value “auto”, which tells
4001 xterm to use the decGraphicsID and decTerminalID resources to
4002 set the default size based on the hardware terminal's limits.
4003 Those limits are the same as for the maxGraphicSize resource.
4004
4005 The default is “auto”.
4006
4007 renderFont (class RenderFont)
4008 If xterm is built with the Xft library, this controls whether
4009 the faceName resource is used. The default is “default”.
4010
4011 The resource values are strings, evaluated as booleans after
4012 startup.
4013
4014 false
4015 disable the feature and use the normal (bitmap) font.
4016
4017 true
4018 startup using the TrueType font specified by the faceName
4019 and faceSize resource settings. If there is no value for
4020 faceName, disable the feature and use the normal (bitmap)
4021 font.
4022
4023 After startup, you can still switch to/from the bitmap
4024 font using the “TrueType Fonts” menu entry.
4025
4026 default
4027 Enable the “TrueType Fonts” menu entry to allow runtime
4028 switching to/from TrueType fonts. The initial font used
4029 depends upon whether the faceName resource is set:
4030
4031 • If the faceName resource is not set, start by using
4032 the normal (bitmap) font. Xterm has a separate
4033 compiled-in value for faceName for this special case.
4034 That is normally “mono”.
4035
4036 • If the faceName resource is set, then start by using
4037 the TrueType font rather than the bitmap font.
4038
4039 defaultOff
4040 Enable the “TrueType Fonts” menu entry to allow runtime
4041 switching to/from TrueType fonts, but allow it to be
4042 initially unselected if no faceName resource was given.
4043
4044 resizeByPixel (class ResizeByPixel)
4045 Set this “true” to disable hints to the window manager that
4046 request resizing by character rather than pixels.
4047
4048 Most window managers provide visual feedback showing the size
4049 of a window as you resize it, using these hints. When you
4050 maximize xterm, it disables those hints to allow the window
4051 manager to make better use of fractional rows or columns.
4052 Setting this resource disables the hints all the time.
4053
4054 The default is “false”.
4055
4056 resizeGravity (class ResizeGravity)
4057 Affects the behavior when the window is resized to be taller or
4058 shorter. NorthWest specifies that the top line of text on the
4059 screen stay fixed. If the window is made shorter, lines are
4060 dropped from the bottom; if the window is made taller, blank
4061 lines are added at the bottom. This is compatible with the
4062 behavior in X11R4. SouthWest (the default) specifies that the
4063 bottom line of text on the screen stay fixed. If the window is
4064 made taller, additional saved lines will be scrolled down onto
4065 the screen; if the window is made shorter, lines will be
4066 scrolled off the top of the screen, and the top saved lines
4067 will be dropped.
4068
4069 retryInputMethod (class RetryInputMethod)
4070 Tells xterm how many times to retry, in case the input-method
4071 server is not responding. This is a different issue than
4072 unsupported preedit type, etc. You may encounter retries if
4073 your X configuration (and its libraries) are missing pieces.
4074 Setting this resource to zero “0” will cancel the retrying.
4075 The default is “3”.
4076
4077 reverseVideo (class ReverseVideo)
4078 Specifies whether or not reverse video should be simulated.
4079 The default is “false”.
4080
4081 There are several aspects to reverse video in xterm:
4082
4083 • The command-line -rv option tells the X libraries to
4084 reverse the foreground and background colors. Xterm's
4085 command-line options set resource values. In particular,
4086 the X Toolkit sets the reverseVideo resource when the -rv
4087 option is used.
4088
4089 • If the user has also used command-line options -fg or -bg
4090 to set the foreground and background colors, xterm does not
4091 see these options directly. Instead, it examines the
4092 resource values to reconstruct the command-line options,
4093 and determine which of the colors is the user's intended
4094 foreground, etc. Their actual values are irrelevant to the
4095 reverse video function; some users prefer the X defaults
4096 (black text on a white background), others prefer white
4097 text on a black background.
4098
4099 • After startup, the user can toggle the “Enable Reverse
4100 Video” menu entry. This exchanges the current foreground
4101 and background colors of the VT100 widget, and repaints the
4102 screen. Because of the X resource hierarchy, the
4103 reverseVideo resource applies to more than the VT100
4104 widget.
4105
4106 Programs running in an xterm can also use control sequences to
4107 enable the VT100 reverse video mode. These are independent of
4108 the reverseVideo resource and the menu entry. Xterm exchanges
4109 the current foreground and background colors when drawing text
4110 affected by these control sequences.
4111
4112 Other control sequences can alter the foreground and background
4113 colors which are used:
4114
4115 • Programs can also use the ANSI color control sequences to
4116 set the foreground and background colors.
4117
4118 • Extensions to the ANSI color controls (such as 16-, 88- or
4119 256-colors) are treated similarly to the ANSI control.
4120
4121 • Using other control sequences (the “dynamic colors”
4122 feature), a program can change the foreground and
4123 background colors.
4124
4125 reverseWrap (class ReverseWrap)
4126 Specifies whether or not reverse-wraparound should be enabled.
4127 This corresponds to xterm's private mode 45. The default is
4128 “false”.
4129
4130 rightScrollBar (class RightScrollBar)
4131 Specifies whether or not the scrollbar should be displayed on
4132 the right rather than the left. The default is “false”.
4133
4134 saveLines (class SaveLines)
4135 Specifies the number of lines to save beyond the top of the
4136 screen when a scrollbar is turned on. The default is “1024”.
4137
4138 scrollBar (class ScrollBar)
4139 Specifies whether or not the scrollbar should be displayed.
4140 The default is “false”.
4141
4142 scrollBarBorder (class ScrollBarBorder)
4143 Specifies the width of the scrollbar border. Note that this is
4144 drawn to overlap the border of the xterm window. Modifying the
4145 scrollbar's border affects only the line between the VT100
4146 widget and the scrollbar. The default value is 1.
4147
4148 scrollKey (class ScrollCond)
4149 Specifies whether or not pressing a key should automatically
4150 cause the scrollbar to go to the bottom of the scrolling
4151 region. This corresponds to xterm's private mode 1011. The
4152 default is “false”.
4153
4154 scrollLines (class ScrollLines)
4155 Specifies the number of lines that the scroll-back and
4156 scroll-forw actions should use as a default. The default value
4157 is 1.
4158
4159 scrollTtyOutput (class ScrollCond)
4160 Specifies whether or not output to the terminal should
4161 automatically cause the scrollbar to go to the bottom of the
4162 scrolling region. The default is “true”.
4163
4164 selectToClipboard (class SelectToClipboard)
4165 Tells xterm whether to use the PRIMARY or CLIPBOARD for SELECT
4166 tokens in the selection mechanism. The set-select action can
4167 change this at runtime, allowing the user to work with programs
4168 that handle only one of these mechanisms. The default is
4169 “false”, which tells it to use PRIMARY.
4170
4171 shiftEscape (class ShiftEscape)
4172 Xterm uses the translations resource to determine how to invoke
4173 actions for selecting and copying text using the pointer (e.g.,
4174 a mouse). It also provides a mouse protocol which can be used
4175 by applications running in an xterm to detect mouse button
4176 clicks.
4177
4178 The mouse protocol causes xterm to send special escape
4179 sequences which allow an application to determine if modifiers
4180 (i.e., one or more of shift, control, alt, and meta) were used.
4181
4182 Xterm provides this mouse protocol by interpreting button- and
4183 motion-events in the functions which the translations resource
4184 calls for selecting and copying text:
4185
4186 insert-selection
4187 select-end
4188 select-extend
4189 select-start
4190 start-extend
4191
4192 While the mouse protocol is active, xterm reserves most of the
4193 mouse button events for sending special escape sequences to the
4194 application. Xterm normally allows you to use the shift-key to
4195 temporarily override this mouse protocol, permitting the
4196 selection and copying actions to be used.
4197
4198 The shiftEscape resource setting allows you to tell xterm
4199 whether to use the shift-key in this way (i.e., overriding the
4200 mouse protocol). Xterm accepts either a keyword (ignoring
4201 case) or the number shown in parentheses:
4202
4203 false (0)
4204 Mouse protocol does not send special escapes when shift-key
4205 is used.
4206
4207 true (1)
4208 Mouse protocol may send special escapes when shift-key is
4209 used.
4210
4211 At startup, xterm analyzes the translations to see which
4212 buttons are used in the (mouse) button-related bindings for
4213 selection and copying text. If the shift-key is not
4214 mentioned explicitly in a button's binding, xterm allows
4215 that button with shift-key for overriding the mouse
4216 protocol.
4217
4218 always (2)
4219 Mouse protocol can always send special escapes when shift-
4220 key is used.
4221
4222 never (3)
4223 Mouse protocol will never send special escapes when shift-
4224 key is used.
4225
4226 Xterm interprets a control sequence which can change this
4227 setting between “true” and “false”. The default is “false”.
4228
4229 shiftFonts (class ShiftFonts)
4230 Specifies whether to enable the actions larger-vt-font() and
4231 smaller-vt-font(), which are normally bound to the shifted
4232 KP_Add and KP_Subtract. The default is “true”.
4233
4234 showBlinkAsBold (class ShowBlinkAsBold)
4235 Tells xterm whether to display text with blink-attribute the
4236 same as bold. If xterm has not been configured to support
4237 blinking text, the default is “true”, which corresponds to
4238 older versions of xterm, otherwise the default is “false”.
4239
4240 showMissingGlyphs (class ShowMissingGlyphs)
4241 Tells xterm whether to display a box outlining places where a
4242 character has been used that the font does not represent. The
4243 default is “false”.
4244
4245 showWrapMarks (class ShowWrapMarks)
4246 For debugging xterm and applications that may manipulate the
4247 wrapped-line flag by writing text at the right margin, show a
4248 mark on the right inner-border of the window. The mark shows
4249 which lines have the flag set.
4250
4251 signalInhibit (class SignalInhibit)
4252 Specifies whether or not the entries in the Main Options menu
4253 for sending signals to xterm should be disallowed. The default
4254 is “false”.
4255
4256 sixelScrolling (class SixelScrolling)
4257 If xterm is configured to support SIXEL graphics, this resource
4258 tells it whether to scroll up one line at a time when sixels
4259 would be written past the bottom line on the window. The
4260 default is “true” which enables scrolling.
4261
4262 Sixel scrolling is the opposite of DEC Sixel Display Mode
4263 (DECSDM): when one is on, the other is off.
4264
4265 sixelScrollsRight (class SixelScrollsRight)
4266 If xterm is configured to support SIXEL graphics, this resource
4267 tells it whether to scroll to the right as needed to keep the
4268 current position visible rather than truncate the plot on the
4269 on the right. The default is “false” which disables scrolling.
4270
4271 tekGeometry (class Geometry)
4272 Specifies the preferred size and position of the Tektronix
4273 window. There is no default for this resource.
4274
4275 tekInhibit (class TekInhibit)
4276 Specifies whether or not the escape sequence to enter Tektronix
4277 mode should be ignored. The default is “false”.
4278
4279 tekSmall (class TekSmall)
4280 Specifies whether or not the Tektronix mode window should start
4281 in its smallest size if no explicit geometry is given. This is
4282 useful when running xterm on displays with small screens. The
4283 default is “false”.
4284
4285 tekStartup (class TekStartup)
4286 Specifies whether or not xterm should start up in Tektronix
4287 mode. The default is “false”.
4288
4289 tiXtraScroll (class TiXtraScroll)
4290 Specifies whether xterm should scroll to a new page when
4291 processing the ti or te termcap strings, i.e., the private
4292 modes 47, 1047 or 1049. This is only in effect if titeInhibit
4293 is “true”, because the intent of this option is to provide a
4294 picture of the full-screen application's display on the
4295 scrollback without wiping out the text that would be shown
4296 before the application was initialized.
4297
4298 Xterm accepts either a keyword (ignoring case) or the number
4299 shown in parentheses:
4300
4301 false (0)
4302 nothing is added to the scrollback.
4303
4304 true (1)
4305 the current screen is added to the scrollback.
4306
4307 trim (2)
4308 the current screen is added to the scrollback, but
4309 repeated blank lines are trimmed (reduced to a single
4310 blank line).
4311
4312 The default for this resource is “false”.
4313
4314 titeInhibit (class TiteInhibit)
4315 Originally specified whether or not xterm should remove ti and
4316 te termcap entries (used to switch between alternate screens on
4317 startup of many screen-oriented programs) from the TERMCAP
4318 string.
4319
4320 TERMCAP is used rarely now, but xterm supports the feature on
4321 modern systems:
4322
4323 • If set, xterm also ignores the escape sequence to switch to
4324 the alternate screen.
4325
4326 • Xterm supports terminfo in a different way, supporting
4327 composite control sequences (also known as private modes)
4328 1047, 1048 and 1049 which have the same effect as the
4329 original 47 control sequence.
4330
4331 The default for this resource is “false”.
4332
4333 titleModes (class TitleModes)
4334 Tells xterm whether to accept or return window- and icon-labels
4335 in ISO-8859-1 (the default) or UTF-8. Either can be encoded in
4336 hexadecimal:
4337
4338 • UTF-8 titles require special treatment, because they may
4339 contain bytes which can be mistaken for control characters.
4340 Hexadecimal-encoding is supported to eliminate that
4341 possibility.
4342
4343 • As an alternative, you could use the allowC1Printable
4344 resource, which suppresses xterm's parsing of the relevant
4345 control characters (and as a result, treats those bytes as
4346 data).
4347
4348 The default for this resource is “0”.
4349
4350 Each bit (bit “0” is 1, bit “1” is 2, etc.) corresponds to one
4351 of the parameters set by the title modes control sequence:
4352
4353 0 Set window/icon labels using hexadecimal
4354
4355 1 Query window/icon labels using hexadecimal
4356
4357 2 Set window/icon labels using UTF-8 (gives the same effect
4358 as the utf8Title resource).
4359
4360 3 Query window/icon labels using UTF-8
4361
4362 translations (class Translations)
4363 Specifies the key and button bindings for menus, selections,
4364 “programmed strings”, etc. The translations resource, which
4365 provides much of xterm's configurability, is a feature of the X
4366 Toolkit Intrinsics library (Xt). See the Actions section.
4367
4368 trimSelection (class TrimSelection)
4369 If you set highlightSelection, you can see the text which is
4370 selected, including any trailing spaces. Clearing the screen
4371 (or a line) resets it to a state containing no spaces. Some
4372 lines may contain trailing spaces when an application writes
4373 them to the screen. However, you may not wish to paste lines
4374 with trailing spaces. If this resource is true, xterm will
4375 trim trailing spaces from text which is selected. It does not
4376 affect spaces which result in a wrapped line, nor will it trim
4377 the trailing newline from your selection. The default is
4378 “false”.
4379
4380 underLine (class UnderLine)
4381 This specifies whether or not text with the underline attribute
4382 should be underlined. It may be desirable to disable
4383 underlining when color is being used for the underline
4384 attribute. The default is “true”.
4385
4386 useBorderClipping (class UseBorderClipping)
4387 Tell xterm whether to apply clipping when useClipping is false.
4388 Unlike useClipping, this simply limits text to keep it within
4389 the window borders, e.g., as a refinement to the scaleHeight
4390 workaround. The default is “false”.
4391
4392 useClipping (class UseClipping)
4393 Tell xterm whether to use clipping to keep from producing dots
4394 outside the text drawing area. Originally used to work around
4395 for overstriking effects, this is also needed to work with some
4396 incorrectly-sized fonts. The default is “true”.
4397
4398 utf8 (class Utf8)
4399 This specifies whether xterm will run in UTF-8 mode. If you
4400 set this resource, xterm also sets the wideChars resource as a
4401 side-effect. The resource can be set via the menu entry “UTF-8
4402 Encoding”. The default is “default”.
4403
4404 Xterm accepts either a keyword (ignoring case) or the number
4405 shown in parentheses:
4406
4407 false (0)
4408 UTF-8 mode is initially off. The command-line option +u8
4409 sets the resource to this value. Escape sequences for
4410 turning UTF-8 mode on/off are allowed.
4411
4412 true (1)
4413 UTF-8 mode is initially on. Escape sequences for turning
4414 UTF-8 mode on/off are allowed.
4415
4416 always (2)
4417 The command-line option -u8 sets the resource to this value.
4418 Escape sequences for turning UTF-8 mode on/off are ignored.
4419
4420 default (3)
4421 This is the default value of the resource. It is changed
4422 during initialization depending on whether the locale
4423 resource was set, to false (0) or always (2). See the
4424 locale resource for additional discussion of non-UTF-8
4425 locales.
4426
4427 If you want to set the value of utf8, it should be in this
4428 range. Other nonzero values are treated the same as “1”, i.e.,
4429 UTF-8 mode is initially on, and escape sequences for turning
4430 UTF-8 mode on/off are allowed.
4431
4432 utf8Fonts (class Utf8Fonts)
4433 See the discussion of the locale resource. This specifies
4434 whether xterm will use UTF-8 fonts specified via resource
4435 patterns such as “*vt100.utf8Fonts.font” or normal (ISO-8859-1)
4436 fonts via patterns such as “*vt100.font”. The resource can be
4437 set via the menu entry “UTF-8 Fonts”. The default is
4438 “default”.
4439
4440 Xterm accepts either a keyword (ignoring case) or the number
4441 shown in parentheses:
4442
4443 false (0)
4444 Use the ISO-8859-1 fonts. The menu entry is enabled,
4445 allowing the choice of fonts to be changed at runtime.
4446
4447 true (1)
4448 Use the UTF-8 fonts. The menu entry is enabled,
4449 allowing the choice of fonts to be changed at runtime.
4450
4451 always (2)
4452 Always use the UTF-8 fonts. This also disables the menu
4453 entry.
4454
4455 default (3)
4456 At startup, the resource is set to true or false,
4457 according to the effective value of the utf8 resource.
4458
4459 utf8Latin1 (class Utf8Latin1)
4460 If true, allow an ISO-8859-1 normal font to be combined with an
4461 ISO-10646-1 font if the latter is given via the -fw option or
4462 its corresponding resource value. The default is “false”.
4463
4464 utf8SelectTypes (class Utf8SelectTypes)
4465 Override xterm's default selection target list (see
4466 SELECT/PASTE) for selections in wide-character (UTF-8) mode.
4467 The default is an empty string, i.e., “”, which does not
4468 override anything.
4469
4470 utf8Title (class Utf8Title)
4471 Applications can set xterm's title by writing a control
4472 sequence. Normally this control sequence follows the VT220
4473 convention, which encodes the string in ISO-8859-1 and allows
4474 for an 8-bit string terminator. If xterm is started in a UTF-8
4475 locale, it translates the ISO-8859-1 string to UTF-8 to work
4476 with the X libraries which assume the string is UTF-8.
4477
4478 However, some users may wish to write a title string encoded in
4479 UTF-8. The window manager is responsible for drawing window
4480 titles. Some window managers (not all) support UTF-8 encoding
4481 of window titles. Set this resource to “true” to also set
4482 UTF-8 encoded title strings using the EWMH properties.
4483
4484 This feature is available as a menu entry, since it is related
4485 to the particular applications you are running within xterm.
4486 You can also use a control sequence (see the discussion of
4487 “Title Modes” in Xterm Control Sequences), to set an equivalent
4488 flag (which can also be set using the titleModes resource).
4489
4490 Xterm accepts either a keyword (ignoring case) or the number
4491 shown in parentheses:
4492
4493 false (0)
4494 Set only ISO-8859-1 title strings, e.g., using the ICCCM
4495 WM_NAME STRING property. The menu entry is enabled,
4496 allowing the choice of title-strings to be changed at
4497 runtime.
4498
4499 true (1)
4500 Set both the EWMH (UTF-8 strings) and the ICCCM WM_NAME,
4501 etc. The menu entry is enabled, allowing the choice to
4502 be changed at runtime.
4503
4504 always (2)
4505 Always set both the EWMH (UTF-8 strings) and the ICCCM
4506 WM_NAME, etc. This also disables the menu entry.
4507
4508 default (3)
4509 At startup, the resource is set to true or false,
4510 according to the effective value of the utf8 resource.
4511
4512 The default is “default”.
4513
4514 utf8Weblike (class Utf8Weblike)
4515 Provide an alternate error-handling scheme for ill-formed UTF-8
4516 as recommended in a W3C document. The Unicode standard does
4517 not require this for conformance. Some additional information
4518 can be found here:
4519
4520 https://invisible-island.net/xterm/bad-utf8/
4521
4522 The default is “false”.
4523
4524 veryBoldColors (class VeryBoldColors)
4525 Specifies whether to combine video attributes with colors
4526 specified by colorBD, colorBL, colorIT, colorRV, and colorUL.
4527 The resource value is the sum of values for each attribute:
4528 1 for reverse,
4529 2 for underline,
4530 4 for bold,
4531 8 for blink, and
4532 512 for italic
4533
4534 The default is “0”.
4535
4536 visualBell (class VisualBell)
4537 Specifies whether or not a visible bell (i.e., flashing) should
4538 be used instead of an audible bell when Control-G is received.
4539 The default is “false”, which tells xterm to use an audible
4540 bell.
4541
4542 visualBellDelay (class VisualBellDelay)
4543 Number of milliseconds to delay when displaying a visual bell.
4544 Default is 100. If set to zero, no visual bell is displayed.
4545 This is useful for very slow displays, e.g., an LCD display on
4546 a laptop.
4547
4548 visualBellLine (class VisualBellLine)
4549 Specifies whether to flash only the current line when
4550 displaying a visual bell rather than flashing the entire
4551 screen: The default is “false”, which tells xterm to flash the
4552 entire screen.
4553
4554 vt100Graphics (class VT100Graphics)
4555 This specifies whether xterm will interpret VT100 graphic
4556 character escape sequences while in UTF-8 mode. This feature
4557 also applies to code-pages (e.g., for VT320 and VT520) and
4558 National Replacement Character Sets (VT220 and up), but not US-
4559 ASCII (the initially selected character set), to avoid conflict
4560 with UTF-8. The default is “true”, to provide support for
4561 various legacy applications.
4562
4563 wideBoldFont (class WideBoldFont)
4564 This option specifies the font to be used for displaying bold
4565 wide text. By default, it will attempt to use a font twice as
4566 wide as the font that will be used to draw bold text. If no
4567 double-width font is found, it will improvise, by stretching
4568 the bold font.
4569
4570 wideChars (class WideChars)
4571 Specifies if xterm should respond to control sequences that
4572 process 16-bit characters. The default is “false”.
4573
4574 wideFont (class WideFont)
4575 This option specifies the font to be used for displaying wide
4576 text. By default, it will attempt to use a font twice as wide
4577 as the font that will be used to draw normal text. If no
4578 double-width font is found, it will improvise, by stretching
4579 the normal font.
4580
4581 xftMaxGlyphMemory (class XftMaxGlyphMemory)
4582 Set the Xft library's limit on glyph memory (typically 4Mb).
4583 When it reaches this limit, it discards “randomly chosen”
4584 glyphs to make room for new ones. The default is “0” to use
4585 Xft's default value.
4586
4587 xftMaxUnrefFonts (class XftMaxUnrefFonts)
4588 Set the Xft library's limit on fonts which have been loaded
4589 (typically 16), e.g., matching patterns for fallback searches,
4590 but are not actually used. The default is “0” to use Xft's
4591 default value.
4592
4593 xftTrackMemUsage (class XftTrackMemUsage)
4594 Enables glyph memory tracking (introduced in Xft 2.3.5), which
4595 allows Xft to efficiently discard obsolete data when running
4596 short of memory. The default is “true”.
4597
4598 ximFont (class XimFont)
4599 This option specifies the font to be used for displaying the
4600 preedit string in the “OverTheSpot” input method.
4601
4602 In “OverTheSpot” preedit type, the preedit (preconversion)
4603 string is displayed at the position of the cursor. It is the
4604 XIM server's responsibility to display the preedit string. The
4605 XIM client must inform the XIM server of the cursor position.
4606 For best results, the preedit string must be displayed with a
4607 proper font. Therefore, xterm informs the XIM server of the
4608 proper font. The font is be supplied by a "fontset", whose
4609 default value is “*”. This matches every font, the X library
4610 automatically chooses fonts with proper charsets. The ximFont
4611 resource is provided to override this default font setting.
4612
4613 Tek4014 Widget Resources
4614 The following resources are specified as part of the tek4014 widget
4615 (class Tek4014). These are specified by patterns such as
4616 “XTerm.tek4014.NAME”:
4617
4618 font2 (class Font)
4619 Specifies font number 2 to use in the Tektronix window.
4620
4621 font3 (class Font)
4622 Specifies font number 3 to use in the Tektronix window.
4623
4624 fontLarge (class Font)
4625 Specifies the large font to use in the Tektronix window.
4626
4627 fontSmall (class Font)
4628 Specifies the small font to use in the Tektronix window.
4629
4630 ginTerminator (class GinTerminator)
4631 Specifies what character(s) should follow a GIN report or
4632 status report. The possibilities are “none”, which sends no
4633 terminating characters, “CRonly”, which sends CR, and “CR&EOT”,
4634 which sends both CR and EOT. The default is “none”.
4635
4636 height (class Height)
4637 Specifies the height of the Tektronix window in pixels.
4638
4639 initialFont (class InitialFont)
4640 Specifies which of the four Tektronix fonts to use initially.
4641 Values are the same as for the set-tek-text action. The
4642 default is “large”.
4643
4644 width (class Width)
4645 Specifies the width of the Tektronix window in pixels.
4646
4647 Menu Resources
4648 The resources that may be specified for the various menus are described
4649 in the documentation for the Athena SimpleMenu widget. The name and
4650 classes of the entries in each of the menus are listed below.
4651 Resources named “lineN” where N is a number are separators with class
4652 SmeLine.
4653
4654 As with all X resource-based widgets, the labels mentioned are
4655 customary defaults for the application.
4656
4657 The Main Options menu (widget name mainMenu) has the following entries:
4658
4659 toolbar (class SmeBSB)
4660 This entry invokes the set-toolbar(toggle) action.
4661
4662 securekbd (class SmeBSB)
4663 This entry invokes the secure() action.
4664
4665 allowsends (class SmeBSB)
4666 This entry invokes the allow-send-events(toggle) action.
4667
4668 redraw (class SmeBSB)
4669 This entry invokes the redraw() action.
4670
4671 logging (class SmeBSB)
4672 This entry invokes the logging(toggle) action.
4673
4674 print-immediate (class SmeBSB)
4675 This entry invokes the print-immediate() action.
4676
4677 print-on-error (class SmeBSB)
4678 This entry invokes the print-on-error() action.
4679
4680 print (class SmeBSB)
4681 This entry invokes the print() action.
4682
4683 print-redir (class SmeBSB)
4684 This entry invokes the print-redir() action.
4685
4686 dump-html (class SmeBSB)
4687 This entry invokes the dump-html() action.
4688
4689 dump-svg (class SmeBSB)
4690 This entry invokes the dump-svg() action.
4691
4692 8-bit-control (class SmeBSB)
4693 This entry invokes the set-8-bit-control(toggle) action.
4694
4695 backarrow key (class SmeBSB)
4696 This entry invokes the set-backarrow(toggle) action.
4697
4698 num-lock (class SmeBSB)
4699 This entry invokes the set-num-lock(toggle) action.
4700
4701 alt-esc (class SmeBSB)
4702 This entry invokes the alt-sends-escape(toggle) action.
4703
4704 meta-esc (class SmeBSB)
4705 This entry invokes the meta-sends-escape(toggle) action.
4706
4707 delete-is-del (class SmeBSB)
4708 This entry invokes the delete-is-del(toggle) action.
4709
4710 oldFunctionKeys (class SmeBSB)
4711 This entry invokes the set-old-function-keys(toggle) action.
4712
4713 hpFunctionKeys (class SmeBSB)
4714 This entry invokes the set-hp-function-keys(toggle) action.
4715
4716 scoFunctionKeys (class SmeBSB)
4717 This entry invokes the set-sco-function-keys(toggle) action.
4718
4719 sunFunctionKeys (class SmeBSB)
4720 This entry invokes the set-sun-function-keys(toggle) action.
4721
4722 sunKeyboard (class SmeBSB)
4723 This entry invokes the sunKeyboard(toggle) action.
4724
4725 suspend (class SmeBSB)
4726 This entry invokes the send-signal(tstp) action on systems that
4727 support job control.
4728
4729 continue (class SmeBSB)
4730 This entry invokes the send-signal(cont) action on systems that
4731 support job control.
4732
4733 interrupt (class SmeBSB)
4734 This entry invokes the send-signal(int) action.
4735
4736 hangup (class SmeBSB)
4737 This entry invokes the send-signal(hup) action.
4738
4739 terminate (class SmeBSB)
4740 This entry invokes the send-signal(term) action.
4741
4742 kill (class SmeBSB)
4743 This entry invokes the send-signal(kill) action.
4744
4745 quit (class SmeBSB)
4746 This entry invokes the quit() action.
4747
4748 The VT Options menu (widget name vtMenu) has the following entries:
4749
4750 scrollbar (class SmeBSB)
4751 This entry invokes the set-scrollbar(toggle) action.
4752
4753 jumpscroll (class SmeBSB)
4754 This entry invokes the set-jumpscroll(toggle) action.
4755
4756 reversevideo (class SmeBSB)
4757 This entry invokes the set-reverse-video(toggle) action.
4758
4759 autowrap (class SmeBSB)
4760 This entry invokes the set-autowrap(toggle) action.
4761
4762 reversewrap (class SmeBSB)
4763 This entry invokes the set-reversewrap(toggle) action.
4764
4765 autolinefeed (class SmeBSB)
4766 This entry invokes the set-autolinefeed(toggle) action.
4767
4768 appcursor (class SmeBSB)
4769 This entry invokes the set-appcursor(toggle) action.
4770
4771 appkeypad (class SmeBSB)
4772 This entry invokes the set-appkeypad(toggle) action.
4773
4774 scrollkey (class SmeBSB)
4775 This entry invokes the set-scroll-on-key(toggle) action.
4776
4777 scrollttyoutput (class SmeBSB)
4778 This entry invokes the set-scroll-on-tty-output(toggle) action.
4779
4780 allow132 (class SmeBSB)
4781 This entry invokes the set-allow132(toggle) action.
4782
4783 cursesemul (class SmeBSB)
4784 This entry invokes the set-cursesemul(toggle) action.
4785
4786 keepSelection (class SmeBSB)
4787 This entry invokes the set-keep-selection(toggle) action.
4788
4789 selectToClipboard (class SmeBSB)
4790 This entry invokes the set-keep-clipboard(toggle) action.
4791
4792 visualbell (class SmeBSB)
4793 This entry invokes the set-visual-bell(toggle) action.
4794
4795 bellIsUrgent (class SmeBSB)
4796 This entry invokes the set-bellIsUrgent(toggle) action.
4797
4798 poponbell (class SmeBSB)
4799 This entry invokes the set-pop-on-bell(toggle) action.
4800
4801 cursorblink (class SmeBSB)
4802 This entry invokes the set-cursorblink(toggle) action.
4803
4804 titeInhibit (class SmeBSB)
4805 This entry invokes the set-titeInhibit(toggle) action.
4806
4807 activeicon (class SmeBSB)
4808 This entry toggles active icons on and off if this feature was
4809 compiled into xterm. It is enabled only if xterm was started
4810 with the command line option +ai or the activeIcon resource is
4811 set to “true”.
4812
4813 softreset (class SmeBSB)
4814 This entry invokes the soft-reset() action.
4815
4816 hardreset (class SmeBSB)
4817 This entry invokes the hard-reset() action.
4818
4819 clearsavedlines (class SmeBSB)
4820 This entry invokes the clear-saved-lines() action.
4821
4822 tekshow (class SmeBSB)
4823 This entry invokes the set-visibility(tek,toggle) action.
4824
4825 tekmode (class SmeBSB)
4826 This entry invokes the set-terminal-type(tek) action.
4827
4828 vthide (class SmeBSB)
4829 This entry invokes the set-visibility(vt,off) action.
4830
4831 altscreen (class SmeBSB)
4832 This entry invokes the set-altscreen(toggle) action.
4833
4834 sixelScrolling (class SmeBSB)
4835 This entry invokes the set-sixel-scrolling(toggle) action.
4836
4837 privateColorRegisters (class SmeBSB)
4838 This entry invokes the set-private-colors(toggle) action.
4839
4840 The VT Fonts menu (widget name fontMenu) has the following entries:
4841
4842 fontdefault (class SmeBSB)
4843 This entry invokes the set-vt-font(d) action, setting the font
4844 using the font (default) resource, e.g., “Default” in the menu.
4845
4846 font1 (class SmeBSB)
4847 This entry invokes the set-vt-font(1) action, setting the font
4848 using the font1 resource, e.g., “Unreadable” in the menu.
4849
4850 font2 (class SmeBSB)
4851 This entry invokes the set-vt-font(2) action, setting the font
4852 using the font2 resource, e.g., “Tiny” in the menu.
4853
4854 font3 (class SmeBSB)
4855 This entry invokes the set-vt-font(3) action, setting the font
4856 using the font3 resource, e.g., “Small” in the menu.
4857
4858 font4 (class SmeBSB)
4859 This entry invokes the set-vt-font(4) action, letting the font
4860 using the font4 resource, e.g., “Medium” in the menu.
4861
4862 font5 (class SmeBSB)
4863 This entry invokes the set-vt-font(5) action, letting the font
4864 using the font5 resource, e.g., “Large” in the menu.
4865
4866 font6 (class SmeBSB)
4867 This entry invokes the set-vt-font(6) action, letting the font
4868 using the font6 resource, e.g., “Huge” in the menu.
4869
4870 font7 (class SmeBSB)
4871 This entry invokes the set-vt-font(7) action, letting the font
4872 using the font7 resource, e.g., “Enormous” in the menu.
4873
4874 fontescape (class SmeBSB)
4875 This entry invokes the set-vt-font(e) action.
4876
4877 fontsel (class SmeBSB)
4878 This entry invokes the set-vt-font(s) action.
4879
4880 allow-bold-fonts (class SmeBSB)
4881 This entry invokes the allow-bold-fonts(toggle) action.
4882
4883 font-linedrawing (class SmeBSB)
4884 This entry invokes the set-font-linedrawing(s) action.
4885
4886 font-packed (class SmeBSB)
4887 This entry invokes the set-font-packed(s) action.
4888
4889 font-doublesize (class SmeBSB)
4890 This entry invokes the set-font-doublesize(s) action.
4891
4892 render-font (class SmeBSB)
4893 This entry invokes the set-render-font(s) action.
4894
4895 utf8-fonts (class SmeBSB)
4896 This entry invokes the set-utf8-fonts(s) action.
4897
4898 utf8-mode (class SmeBSB)
4899 This entry invokes the set-utf8-mode(s) action.
4900
4901 utf8-title (class SmeBSB)
4902 This entry invokes the set-utf8-title(s) action.
4903
4904 allow-color-ops (class SmeBSB)
4905 This entry invokes the allow-color-ops(toggle) action.
4906
4907 allow-font-ops (class SmeBSB)
4908 This entry invokes the allow-fonts-ops(toggle) action.
4909
4910 allow-tcap-ops (class SmeBSB)
4911 This entry invokes the allow-tcap-ops(toggle) action.
4912
4913 allow-title-ops (class SmeBSB)
4914 This entry invokes the allow-title-ops(toggle) action.
4915
4916 allow-window-ops (class SmeBSB)
4917 This entry invokes the allow-window-ops(toggle) action.
4918
4919 The Tek Options menu (widget name tekMenu) has the following entries:
4920
4921 tektextlarge (class SmeBSB)
4922 This entry invokes the set-tek-text(large) action.
4923
4924 tektext2 (class SmeBSB)
4925 This entry invokes the set-tek-text(2) action.
4926
4927 tektext3 (class SmeBSB)
4928 This entry invokes the set-tek-text(3) action.
4929
4930 tektextsmall (class SmeBSB)
4931 This entry invokes the set-tek-text(small) action.
4932
4933 tekpage (class SmeBSB)
4934 This entry invokes the tek-page() action.
4935
4936 tekreset (class SmeBSB)
4937 This entry invokes the tek-reset() action.
4938
4939 tekcopy (class SmeBSB)
4940 This entry invokes the tek-copy() action.
4941
4942 vtshow (class SmeBSB)
4943 This entry invokes the set-visibility(vt,toggle) action.
4944
4945 vtmode (class SmeBSB)
4946 This entry invokes the set-terminal-type(vt) action.
4947
4948 tekhide (class SmeBSB)
4949 This entry invokes the set-visibility(tek,toggle) action.
4950
4951 Scrollbar Resources
4952 The following resources are useful when specified for the Athena
4953 Scrollbar widget:
4954
4955 background (class Background)
4956 Specifies the color to use for the background of the scrollbar.
4957
4958 foreground (class Foreground)
4959 Specifies the color to use for the foreground of the scrollbar.
4960
4961 thickness (class Thickness)
4962 Specifies the width in pixels of the scrollbar (default: 14).
4963
4964 This may be overridden by the width resource.
4965
4966 thumb (class Thumb)
4967 The default “thumb” pixmap used for the scrollbar is a simple
4968 checkerboard pattern alternating pixels for foreground and
4969 background color.
4970
4971 width (class Width)
4972 Specifies the width in pixels of the scrollbar (default: 0).
4973
4974 The widget checks the width resource first, using the thickness
4975 value if the width is zero.
4976
4978 Once the VTxxx window is created, xterm allows you to select text and
4979 copy it within the same or other windows using the pointer or the
4980 keyboard.
4981
4982 A “pointer” could be a mouse, touchpad or similar device. X
4983 applications generally do not care, since they see only button events
4984 which have
4985
4986 • position and
4987
4988 • button up/down state
4989
4990 Xterm can see these events as long as it has focus.
4991
4992 The keyboard also supplies events, but it is less flexible than the
4993 pointer for selecting/copying text.
4994
4995 Events are applied to actions using the translations resource. See
4996 Actions for a complete list, and Default Key Bindings for the built-in
4997 set of translations resources.
4998
4999 Selection Functions
5000 By default, the selection functions are invoked when the pointer
5001 buttons are used with no modifiers, and when they are used with the
5002 “shift” key. The “shift” key is special, because xterm uses that to
5003 ensure that selection functions are still available when it is
5004 programmed to send escape sequences in one of the mouse modes (see
5005 Xterm Control Sequences, as well as the resource disallowedMouseOps).
5006
5007 At startup, xterm inspects the translations resource to see which
5008 pointer buttons may be used in this way, and remembers these buttons
5009 when deciding whether to send escape sequences or perform selection
5010 when those buttons are used with the “shift” modifier. Other pointer
5011 buttons, e.g., typically those sent for wheel mouse events, are not
5012 affected.
5013
5014 The assignment of the functions described below to keys and buttons may
5015 be changed through the resource database; see Actions below.
5016
5017 Pointer button one (usually left)
5018 is used to save text into the cut buffer:
5019
5020 ~Meta <Btn1Down>:select-start()
5021
5022 Move the cursor to beginning of the text, and then hold the button
5023 down while moving the cursor to the end of the region and
5024 releasing the button. The selected text is highlighted and is
5025 saved in the global cut buffer and made the selection when the
5026 button is released:
5027
5028 <BtnUp>:select-end(SELECT, CUT_BUFFER0) \n
5029
5030 Normally (but see the discussion of on2Clicks, etc):
5031
5032 • Double-clicking selects by words.
5033
5034 • Triple-clicking selects by lines.
5035
5036 • Quadruple-clicking goes back to characters, etc.
5037
5038 Multiple-click is determined by the time from button up to button
5039 down, so you can change the selection unit in the middle of a
5040 selection. Logical words and lines selected by double- or triple-
5041 clicking may wrap across more than one screen line if lines were
5042 wrapped by xterm itself rather than by the application running in
5043 the window. If the key/button bindings specify that an X
5044 selection is to be made, xterm will leave the selected text
5045 highlighted for as long as it is the selection owner.
5046
5047 Pointer button two (usually middle)
5048 “types” (pastes) the text from the given selection, if any,
5049 otherwise from the cut buffer, inserting it as keyboard input:
5050
5051 ~Ctrl ~Meta <Btn2Up>:insert-selection(SELECT, CUT_BUFFER0)
5052
5053 Pointer button three (usually right)
5054 extends the current selection.
5055
5056 ~Ctrl ~Meta <Btn3Down>:start-extend()
5057
5058 (Without loss of generality, you can swap “right” and “left”
5059 everywhere in the rest of this paragraph.) If pressed while
5060 closer to the right edge of the selection than the left, it
5061 extends/contracts the right edge of the selection. If you
5062 contract the selection past the left edge of the selection, xterm
5063 assumes you really meant the left edge, restores the original
5064 selection, then extends/contracts the left edge of the selection.
5065 Extension starts in the selection unit mode that the last
5066 selection or extension was performed in; you can multiple-click to
5067 cycle through them.
5068
5069 By cutting and pasting pieces of text without trailing new lines, you
5070 can take text from several places in different windows and form a
5071 command to the shell, for example, or take output from a program and
5072 insert it into your favorite editor. Since cut buffers are globally
5073 shared among different applications, you may regard each as a “file”
5074 whose contents you know. The terminal emulator and other text programs
5075 should be treating it as if it were a text file, i.e., the text is
5076 delimited by new lines.
5077
5078 Scrolling
5079 The scroll region displays the position and amount of text currently
5080 showing in the window (highlighted) relative to the amount of text
5081 actually saved. As more text is saved (up to the maximum), the size of
5082 the highlighted area decreases.
5083
5084 Clicking button one with the pointer in the scroll region moves the
5085 adjacent line to the top of the display window.
5086
5087 Clicking button three moves the top line of the display window down to
5088 the pointer position.
5089
5090 Clicking button two moves the display to a position in the saved text
5091 that corresponds to the pointer's position in the scrollbar.
5092
5093 Tektronix Pointer
5094 Unlike the VTxxx window, the Tektronix window does not allow the
5095 copying of text. It does allow Tektronix GIN mode, and in this mode
5096 the cursor will change from an arrow to a cross. Pressing any key will
5097 send that key and the current coordinate of the cross cursor. Pressing
5098 button one, two, or three will return the letters “l”, “m”, and “r”,
5099 respectively. If the “shift” key is pressed when a pointer button is
5100 pressed, the corresponding upper case letter is sent. To distinguish a
5101 pointer button from a key, the high bit of the character is set (but
5102 this is bit is normally stripped unless the terminal mode is RAW; see
5103 tty(4) for details).
5104
5106 X clients provide select and paste support by responding to requests
5107 conveyed by the X server. The X server holds data in “atoms” which
5108 correspond to the different types of selection (PRIMARY, SECONDARY,
5109 CLIPBOARD) as well as the similar cut buffer mechanism (CUT_BUFFER0 to
5110 CUT_BUFFER7). Those are documented in the ICCCM.
5111
5112 The ICCCM deals with the underlying mechanism for select/paste. It
5113 does not mention highlighting. The selection is not the same as
5114 highlighting. Xterm (like many applications) uses highlighting to show
5115 you the currently selected text. An X application may own a selection,
5116 which allows it to be the source of data copied using a given selection
5117 atom Xterm may continue owning a selection after it stops highlighting
5118 (see keepSelection).
5119
5120 PRIMARY
5121 When configured to use the primary selection (the default), xterm can
5122 provide the selection data in ways which help to retain character
5123 encoding information as it is pasted.
5124
5125 The PRIMARY token is a standard X feature, documented in the ICCCM
5126 (Inter-Client Communication Conventions Manual), which states
5127
5128 The selection named by the atom PRIMARY is used for all commands
5129 that take only a single argument and is the principal means of
5130 communication between clients that use the selection mechanism.
5131
5132 A user “selects” text on xterm, which highlights the selected text. A
5133 subsequent “paste” to another client forwards a request to the client
5134 owning the selection. If xterm owns the primary selection, it makes
5135 the data available in the form of one or more “selection targets”. If
5136 it does not own the primary selection, e.g., if it has released it or
5137 another client has asserted ownership, it relies on cut-buffers to pass
5138 the data. But cut-buffers handle only ISO-8859-1 data (officially -
5139 some clients ignore the rules).
5140
5141 CLIPBOARD
5142 When configured to use the clipboard (using the selectToClipboard
5143 resource), the problem with persistence of ownership is bypassed.
5144 Otherwise, there is no difference regarding the data which can be
5145 passed via selection.
5146
5147 The selectToClipboard resource is a compromise, allowing CLIPBOARD to
5148 be treated almost like PRIMARY, unlike the ICCCM, which describes
5149 CLIPBOARD in different terms than PRIMARY or SECONDARY. Its lengthy
5150 explanation begins with the essential points:
5151
5152 The selection named by the atom CLIPBOARD is used to hold data that
5153 is being transferred between clients, that is, data that usually is
5154 being cut and then pasted or copied and then pasted. Whenever a
5155 client wants to transfer data to the clipboard:
5156
5157 • It should assert ownership of the CLIPBOARD.
5158
5159 • If it succeeds in acquiring ownership, it should be prepared to
5160 respond to a request for the contents of the CLIPBOARD in the
5161 usual way (retaining the data to be able to return it). The
5162 request may be generated by the clipboard client described
5163 below.
5164
5165 SELECT
5166 However, many applications use CLIPBOARD in imitation of other
5167 windowing systems. The selectToClipboard resource (and corresponding
5168 menu entry Select to Clipboard) introduce the SELECT token (known only
5169 to xterm) which chooses between the PRIMARY and CLIPBOARD tokens.
5170
5171 Without using this feature, one can use workarounds such as the xclip
5172 program to show the contents of the X clipboard within an xterm window.
5173
5174 SECONDARY
5175 This is used less often than PRIMARY or CLIPBOARD. According to the
5176 ICCCM, it is used
5177
5178 • As the second argument to commands taking two arguments (for
5179 example, “exchange primary and secondary selections”)
5180
5181 • As a means of obtaining data when there is a primary selection and
5182 the user does not want to disturb it
5183
5184 Selection Targets
5185 The different types of data which are passed depend on what the
5186 receiving client asks for. These are termed selection targets.
5187
5188 When asking for the selection data, xterm tries the following types in
5189 this order:
5190
5191 UTF8_STRING
5192 This is an XFree86 extension, which denotes that the data is
5193 encoded in UTF-8. When xterm is built with wide-character
5194 support, it both accepts and provides this type.
5195
5196 TEXT the text is in the encoding which corresponds to your current
5197 locale.
5198
5199 COMPOUND_TEXT
5200 this is a format for multiple character set data, such as
5201 multi-lingual text. It can store UTF-8 data as a special
5202 case.
5203
5204 STRING
5205 This is Latin 1 (ISO-8859-1) data.
5206
5207 The middle two (TEXT and COMPOUND_TEXT) are added if xterm is
5208 configured with the i18nSelections resource set to “true”.
5209
5210 UTF8_STRING is preferred (therefore first in the list) since xterm
5211 stores text as Unicode data when running in wide-character mode, and no
5212 translation is needed. On the other hand, TEXT and COMPOUND_TEXT may
5213 require translation. If the translation is incomplete, they will
5214 insert X's “defaultString” whose value cannot be set, and may simply be
5215 empty. Xterm's defaultString resource specifies the string to use for
5216 incomplete translations of the UTF8_STRING.
5217
5218 You can alter the types which xterm tries using the eightBitSelectTypes
5219 or utf8SelectTypes resources. For instance, you might have some
5220 specific locale setting which does not use UTF-8 encoding. The
5221 resource value is a comma-separated list of the selection targets,
5222 which consist of the names shown. You can use the special name I18N to
5223 denote the optional inclusion of TEXT and COMPOUND_TEXT. The names are
5224 matched ignoring case, and can be abbreviated. The default list can be
5225 expressed in several ways, e.g.,
5226
5227 UTF8_STRING,I18N,STRING
5228 utf8,i18n,string
5229 u,i,s
5230
5231 Mouse Protocol
5232 Applications can send escape sequences to xterm to cause it to send
5233 escape sequences back to the computer when you press a pointer button,
5234 or even (depending on which escape sequence) send escape sequences back
5235 to the computer as you move the pointer.
5236
5237 These escape sequences and the responses, called the mouse protocol,
5238 are documented in XTerm Control Sequences. They do not appear in the
5239 actions invoked by the translations resource because the resource does
5240 not change while you run xterm, whereas applications can change the
5241 mouse prototol (i.e., enable, disable, use different modes).
5242
5243 However, the mouse protocol is interpreted within the actions that are
5244 usually associated with the pointer buttons. Xterm ignores the mouse
5245 protocol in the insert-selection action if the shift-key is pressed at
5246 the same time. It also modifies a few other actions if the shift-key
5247 is pressed, e.g., suppressing the response with the pointer position,
5248 though not eliminating changes to the selected text.
5249
5251 Xterm has four menus, named mainMenu, vtMenu, fontMenu, and tekMenu.
5252 Each menu pops up under the correct combinations of key and button
5253 presses. Each menu is divided into sections, separated by a horizontal
5254 line. Some menu entries correspond to modes that can be altered. A
5255 check mark appears next to a mode that is currently active. Selecting
5256 one of these modes toggles its state. Other menu entries are commands;
5257 selecting one of these performs the indicated function.
5258
5259 All of the menu entries correspond to X actions. In the list below,
5260 the menu label is shown followed by the action's name in parenthesis.
5261
5262 Main Options
5263 The xterm mainMenu pops up when the “control” key and pointer button
5264 one are pressed in a window. This menu contains items that apply to
5265 both the VTxxx and Tektronix windows. There are several sections:
5266
5267 Commands for managing X events:
5268
5269 Toolbar (resource toolbar)
5270 Clicking on the “Toolbar” menu entry hides the toolbar if
5271 it is visible, and shows it if it is not.
5272
5273 Secure Keyboard (resource securekbd)
5274 The Secure Keyboard mode is helpful when typing in
5275 passwords or other sensitive data in an unsecure
5276 environment (see SECURITY below, but read the limitations
5277 carefully).
5278
5279 Allow SendEvents (resource allowsends)
5280 Specifies whether or not synthetic key and button events
5281 generated using the X protocol SendEvent request should
5282 be interpreted or discarded. This corresponds to the
5283 allowSendEvents resource.
5284
5285 Redraw Window (resource redraw)
5286 Forces the X display to repaint; useful in some
5287 environments.
5288
5289 Commands for capturing output:
5290
5291 Log to File (resource logging)
5292 Captures text sent to the screen in a log file, as in the
5293 -l logging option.
5294
5295 Print-All Immediately (resource print-immediate)
5296 Invokes the print-immediate action, sending the text of
5297 the current window directly to a file, as specified by
5298 the printFileImmediate, printModeImmediate and
5299 printOptsImmediate resources.
5300
5301 Print-All on Error (resource print-on-error)
5302 Invokes the print-on-error action, which toggles a flag
5303 telling xterm that if it exits with an X error, to send
5304 the text of the current window directly to a file, as
5305 specified by the printFileOnXError, printModeOnXError and
5306 printOptsOnXError resources.
5307
5308 Print Window (resource print)
5309 Sends the text of the current window to the program given
5310 in the printerCommand resource.
5311
5312 Redirect to Printer (resource print-redir)
5313 This sets the printerControlMode to 0 or 2. You can use
5314 this to turn the printer on as if an application had sent
5315 the appropriate control sequence. It is also useful for
5316 switching the printer off if an application turns it on
5317 without resetting the print control mode.
5318
5319 XHTML Screen Dump (resource dump-html)
5320 Available only when compiled with screen dump support.
5321 Invokes the dump-html action. This creates an XHTML file
5322 matching the contents of the current screen, including
5323 the border, internal border, colors and most attributes:
5324 bold, italic, underline, faint, strikeout, reverse; blink
5325 is rendered as white-on-red; double underline is rendered
5326 the same as underline since there is no portable
5327 equivalent in CSS 2.2.
5328
5329 The font is whatever your browser uses for preformatted
5330 (<pre>) elements. The XHTML file references a cascading
5331 style sheet (CSS) named “xterm.css” that you can create
5332 to select a font or override properties.
5333
5334 The following CSS selectors are used with the expected
5335 default behavior in the XHTML file:
5336
5337 .ul for underline,
5338 .bd for bold,
5339 .it for italic,
5340 .st for strikeout,
5341 .lu for strikeout combined with underline.
5342
5343 In addition you may use
5344
5345 .ev to affect even numbered lines and
5346 .od to affect odd numbered lines.
5347
5348 Attributes faint, reverse and blink are implemented as
5349 style attributes setting color properties. All colors
5350 are specified as RGB percentages in order to support
5351 displays with 10 bits per RGB.
5352
5353 The name of the file will be
5354
5355 xterm.yyyy.MM.dd.hh.mm.ss.xhtml
5356
5357 where yyyy, MM, dd, hh, mm and ss are the year, month,
5358 day, hour, minute and second when the screen dump was
5359 performed (the file is created in the directory xterm is
5360 started in, or the home directory for a login xterm).
5361
5362 The dump-html action can also be triggered using the
5363 Media Copy control sequence CSI 1 0 i, for example from a
5364 shell script with
5365
5366 printf '\033[10i'
5367
5368 Only the UTF-8 encoding is supported.
5369
5370 SVG Screen Dump (resource dump-svg)
5371 Available only when compiled with screen dump support.
5372 Invokes the dump-svg action. This creates a Scalable
5373 Vector Graphics (SVG) file matching the contents of the
5374 current screen, including the border, internal border,
5375 colors and most attributes: bold, italic, underline,
5376 double underline, faint, strikeout, reverse; blink is
5377 rendered as white-on-red. The font is whatever your
5378 renderer uses for the monospace font-family. All colors
5379 are specified as RGB percentages in order to support
5380 displays with 10 bits per RGB.
5381
5382 The name of the file will be
5383
5384 xterm.yyyy.MM.dd.hh.mm.ss.svg
5385
5386 where yyyy, MM, dd, hh, mm and ss are the year, month,
5387 day, hour, minute and second when the screen dump was
5388 performed (the file is created in the directory xterm is
5389 started in, or the home directory for a login xterm).
5390
5391 The dump-svg action can also be triggered using the Media
5392 Copy control sequence CSI 1 1 i, for example from a shell
5393 script with
5394
5395 printf '\033[11i'
5396
5397 Only the UTF-8 encoding is supported.
5398
5399 Modes for setting keyboard style:
5400
5401 8-Bit Controls (resource 8-bit-control)
5402 Enabled for VT220 emulation, this controls whether xterm
5403 will send 8-bit control sequences rather than using 7-bit
5404 (ASCII) controls, e.g., sending a byte in the range
5405 128–159 rather than the escape character followed by a
5406 second byte. Xterm always interprets both 8-bit and
5407 7-bit control sequences (see Xterm Control Sequences).
5408 This corresponds to the eightBitControl resource.
5409
5410 Backarrow Key (BS/DEL) (resource backarrow key)
5411 Modifies the behavior of the backarrow key, making it
5412 transmit either a backspace (8) or delete (127)
5413 character. This corresponds to the backarrowKey
5414 resource.
5415
5416 Alt/NumLock Modifiers (resource num-lock)
5417 Controls the treatment of Alt- and NumLock-key modifiers.
5418 This corresponds to the numLock resource.
5419
5420 Meta Sends Escape (resource meta-esc)
5421 Controls whether Meta keys are converted into a two-
5422 character sequence with the character itself preceded by
5423 ESC. This corresponds to the metaSendsEscape resource.
5424
5425 Delete is DEL (resource delete-is-del)
5426 Controls whether the Delete key on the editing keypad
5427 should send DEL (127) or the VT220-style Remove escape
5428 sequence. This corresponds to the deleteIsDEL resource.
5429
5430 Old Function-Keys (resource oldFunctionKeys)
5431
5432 HP Function-Keys (resource hpFunctionKeys)
5433
5434 SCO Function-Keys (resource scoFunctionKeys)
5435
5436 Sun Function-Keys (resource sunFunctionKeys)
5437
5438 VT220 Keyboard (resource sunKeyboard)
5439 These act as a radio-button, selecting one style for the
5440 keyboard layout. The layout corresponds to more than one
5441 resource setting: sunKeyboard, sunFunctionKeys,
5442 scoFunctionKeys and hpFunctionKeys.
5443
5444 Commands for process signalling:
5445
5446 Send STOP Signal (resource suspend)
5447
5448 Send CONT Signal (resource continue)
5449
5450 Send INT Signal (resource interrupt)
5451
5452 Send HUP Signal (resource hangup)
5453
5454 Send TERM Signal (resource terminate)
5455
5456 Send KILL Signal (resource kill)
5457 These send the SIGTSTP, SIGCONT, SIGINT, SIGHUP, SIGTERM
5458 and SIGKILL signals respectively, to the process group of
5459 the process running under xterm (usually the shell). The
5460 SIGCONT function is especially useful if the user has
5461 accidentally typed CTRL-Z, suspending the process.
5462
5463 Quit (resource quit)
5464 Stop processing X events except to support the -hold
5465 option, and then send a SIGHUP signal to the process
5466 group of the process running under xterm (usually the
5467 shell).
5468
5469 VT Options
5470 The xterm vtMenu sets various modes in the VTxxx emulation, and is
5471 popped up when the “control” key and pointer button two are pressed in
5472 the VTxxx window.
5473
5474 VTxxx Modes:
5475
5476 Enable Scrollbar (resource scrollbar)
5477 Enable (or disable) the scrollbar. This corresponds to
5478 the -sb option and the scrollBar resource.
5479
5480 Enable Jump Scroll (resource jumpscroll)
5481 Enable (or disable) jump scrolling. This corresponds to
5482 the -j option and the jumpScroll resource.
5483
5484 Enable Reverse Video (resource reversevideo)
5485 Enable (or disable) reverse-video. This corresponds to
5486 the -rv option and the reverseVideo resource.
5487
5488 Enable Auto Wraparound (resource autowrap)
5489 Enable (or disable) auto-wraparound. This corresponds to
5490 the -aw option and the autoWrap resource.
5491
5492 Enable Reverse Wraparound (resource reversewrap)
5493 Enable (or disable) reverse wraparound. This corresponds
5494 to the -rw option and the reverseWrap resource.
5495
5496 Enable Auto Linefeed (resource autolinefeed)
5497 Enable (or disable) auto-linefeed. This is the VT102 NEL
5498 function, which causes the emulator to emit a line feed
5499 after each carriage return. There is no corresponding
5500 command-line option or resource setting.
5501
5502 Enable Application Cursor Keys (resource appcursor)
5503 Enable (or disable) application cursor keys. This
5504 corresponds to the appcursorDefault resource. There is
5505 no corresponding command-line option.
5506
5507 Enable Application Keypad (resource appkeypad)
5508 Enable (or disable) application keypad keys. This
5509 corresponds to the appkeypadDefault resource. There is
5510 no corresponding command-line option.
5511
5512 Scroll to Bottom on Key Press (resource scrollkey)
5513 Enable (or disable) scrolling to the bottom of the
5514 scrolling region on a keypress. This corresponds to the
5515 -sk option and the scrollKey resource.
5516
5517 As a special case, the XON / XOFF keys (control/S and
5518 control/Q) are ignored.
5519
5520 Scroll to Bottom on Tty Output (resource scrollttyoutput)
5521 Enable (or disable) scrolling to the bottom of the
5522 scrolling region on output to the terminal. This
5523 corresponds to the -si option and the scrollTtyOutput
5524 resource.
5525
5526 Allow 80/132 Column Switching (resource allow132)
5527 Enable (or disable) switching between 80 and 132 columns.
5528 This corresponds to the -132 option and the c132
5529 resource.
5530
5531 Keep Selection (resource keepSelection)
5532 Tell xterm whether to disown the selection when it stops
5533 highlighting it, e.g., when an application modifies the
5534 display so that it no longer matches the text which has
5535 been highlighted. As long as xterm continues to own the
5536 selection for a given atom, it can provide the
5537 corresponding text to other clients which request the
5538 selection using that atom.
5539
5540 This corresponds to the keepSelection resource. There is
5541 no corresponding command-line option.
5542
5543 Telling xterm to not disown the selection does not
5544 prevent other applications from taking ownership of the
5545 selection. When that happens, xterm receives
5546 notification that this has happened, and removes its
5547 highlighting.
5548
5549 See SELECT/PASTE for more information.
5550
5551 Select to Clipboard (resource selectToClipboard)
5552 Tell xterm whether to use the PRIMARY or CLIPBOARD for
5553 SELECT tokens in the translations resource which maps
5554 keyboard and mouse actions to select/paste actions.
5555
5556 This corresponds to the selectToClipboard resource.
5557 There is no corresponding command-line option.
5558
5559 The keepSelection resource setting applies to CLIPBOARD
5560 selections just as it does for PRIMARY selections.
5561 However some window managers treat the clipboard
5562 specially. For instance, XQuartz's synchronization
5563 between the OSX pasteboard and the X11 clipboard causes
5564 applications to lose the selection ownership for that
5565 atom when a selection is copied to the clipboard.
5566
5567 See SELECT/PASTE for more information.
5568
5569 Enable Visual Bell (resource visualbell)
5570 Enable (or disable) visible bell (i.e., flashing) instead
5571 of an audible bell. This corresponds to the -vb option
5572 and the visualBell resource.
5573
5574 Enable Bell Urgency (resource bellIsUrgent)
5575 Enable (or disable) Urgency window manager hint when
5576 Control-G is received. This corresponds to the
5577 bellIsUrgent resource.
5578
5579 Enable Pop on Bell (resource poponbell)
5580 Enable (or disable) raising of the window when Control-G
5581 is received. This corresponds to the -pop option and the
5582 popOnBell resource.
5583
5584 Enable Blinking Cursor (resource cursorblink)
5585 Enable (or disable) the blinking-cursor feature. This
5586 corresponds to the -bc option and the cursorBlink
5587 resource. There are also escape sequences (see Xterm
5588 Control Sequences):
5589
5590 • If the cursorBlinkXOR resource is set, the menu entry
5591 and the escape sequence states will be XOR'd: if both
5592 are enabled, the cursor will not blink, if only one
5593 is enabled, the cursor will blink.
5594
5595 • If the cursorBlinkXOR is not set; if either the menu
5596 entry or the escape sequence states are set, the
5597 cursor will blink.
5598
5599 In either case, the checkbox for the menu shows the state
5600 of the cursorBlink resource, which may not correspond to
5601 what the cursor is actually doing.
5602
5603 Enable Alternate Screen Switching (resource titeInhibit)
5604 Enable (or disable) switching between the normal and
5605 alternate screens. This corresponds to the titeInhibit
5606 resource. There is no corresponding command-line option.
5607
5608 Enable Active Icon (resource activeicon)
5609 Enable (or disable) the active-icon feature. This
5610 corresponds to the -ai option and the activeIcon
5611 resource.
5612
5613 Sixel Scrolling (resource sixelScrolling)
5614 This corresponds to the sixelScrolling resource. It can
5615 also be turned off and on using the private mode DECSDM
5616 (Sixel Display Mode).
5617
5618 • When enabled, xterm draws sixel graphics at the
5619 current text cursor location, scrolling the image
5620 vertically if it is larger than the screen, and
5621 leaving the text cursor at the same column in the
5622 next complete line after the image when returning to
5623 text mode
5624
5625 This is the default, which corresponds to the reset
5626 state of DECSDM.
5627
5628 • When disabled, xterm draws sixel graphics starting at
5629 the upper left of the screen, cropping to fit the
5630 screen, and does not alter the text cursor location.
5631
5632 This corresponds to the set state of DECSDM.
5633
5634 There is no corresponding command-line option.
5635
5636 Private Color Registers (resource privateColorRegisters)
5637 If xterm is configured to support ReGIS graphics, this
5638 controls whether a private color palette can be used.
5639
5640 When enabled, each graphic image uses a separate set of
5641 color registers, so that it essentially has a private
5642 palette (this is the default). If it is not set, all
5643 graphics images share a common set of registers which is
5644 how sixel and ReGIS graphics worked on actual hardware.
5645 The default is likely a more useful mode on modern
5646 TrueColor hardware.
5647
5648 This corresponds to the privateColorRegisters resource.
5649 There is no corresponding command-line option.
5650
5651 VTxxx Commands:
5652
5653 Do Soft Reset (resource softreset)
5654 Reset scroll regions. This can be convenient when some
5655 program has left the scroll regions set incorrectly
5656 (often a problem when using VMS or TOPS-20). This
5657 corresponds to the VT220 DECSTR control sequence.
5658
5659 Do Full Reset (resource hardreset)
5660 The full reset entry will clear the screen, reset tabs to
5661 every eight columns, and reset the terminal modes (such
5662 as wrap and smooth scroll) to their initial states just
5663 after xterm has finished processing the command line
5664 options. This corresponds to the VT102 RIS control
5665 sequence, with a few obvious differences. For example,
5666 your session is not disconnected as a real VT102 would
5667 do.
5668
5669 Reset and Clear Saved Lines (resource clearsavedlines)
5670 Perform a full reset, and also clear the saved lines.
5671
5672 Commands for setting the current screen:
5673
5674 Show Tek Window (resource tekshow)
5675 When enabled, pops the Tektronix 4014 window up (makes it
5676 visible). When disabled, hides the Tektronix 4014
5677 window.
5678
5679 Switch to Tek Mode (resource tekmode)
5680 When enabled, pops the Tektronix 4014 window up if it is
5681 not already visible, and switches the input stream to
5682 that window. When disabled, hides the Tektronix 4014
5683 window and switches input back to the VTxxx window.
5684
5685 Hide VT Window (resource vthide)
5686 When enabled, hides the VTxxx window, shows the Tektronix
5687 4014 window if it was not already visible and switches
5688 the input stream to that window. When disabled, shows
5689 the VTxxx window, and switches the input stream to that
5690 window.
5691
5692 Show Alternate Screen (resource altscreen)
5693 When enabled, shows the alternate screen. When disabled,
5694 shows the normal screen. Note that the normal screen may
5695 have saved lines; the alternate screen does not.
5696
5697 VT Fonts
5698 The xterm fontMenu pops up when the “control” key and pointer button
5699 three are pressed in a window. It sets the font used in the VTxxx
5700 window, or modifies the way the font is specified or displayed. There
5701 are several sections.
5702
5703 The first section allows you to select the font from a set of
5704 alternatives:
5705
5706 Default (resource fontdefault)
5707 Set the font to the default, i.e., that given by the
5708 *VT100.font resource.
5709
5710 Unreadable (resource font1)
5711 Set the font to that given by the *VT100.font1 resource.
5712
5713 Tiny (resource font2)
5714 Set the font to that given by the *VT100.font2 resource.
5715
5716 Small (resource font3)
5717 Set the font to that given by the *VT100.font3 resource.
5718
5719 Medium (resource font4)
5720 Set the font to that given by the *VT100.font4 resource.
5721
5722 Large (resource font5)
5723 Set the font to that given by the *VT100.font5 resource.
5724
5725 Huge (resource font6)
5726 Set the font to that given by the *VT100.font6 resource.
5727
5728 Enormous (resource font7)
5729 Set the font to that given by the *VT100.font7 resource.
5730
5731 Escape Sequence (resource fontescape)
5732 This allows you to set the font last specified by the Set
5733 Font escape sequence (see Xterm Control Sequences).
5734
5735 Selection (resource fontsel)
5736 This allows you to set the font specified the current
5737 selection as a font name (if the PRIMARY selection is
5738 owned).
5739
5740 The second section allows you to modify the way it is displayed:
5741
5742 Bold Fonts (resource allow-bold-fonts)
5743 This is normally checked (enabled). When unchecked,
5744 xterm will not use bold fonts. The setting corresponds
5745 to the allowBoldFonts resource.
5746
5747 Line-Drawing Characters (resource font-linedrawing)
5748 When set, tells xterm to draw its own line-drawing
5749 characters. Otherwise it relies on the font containing
5750 these. Compare to the forceBoxChars resource.
5751
5752 Packed Font (resource font-packed)
5753 When set, tells xterm to use the minimum glyph-width from
5754 a font when displaying characters. Use the maximum width
5755 (unchecked) to help display proportional fonts. Compare
5756 to the forcePackedFont resource.
5757
5758 Doublesized Characters (resource font-doublesize)
5759 When set, xterm may ask the font server to produce scaled
5760 versions of the normal font, for VT102 double-size
5761 characters.
5762
5763 The third section allows you to modify the way it is specified:
5764
5765 TrueType Fonts (resource render-font)
5766 If the renderFont and corresponding resources were set,
5767 this is a further control whether xterm will actually use
5768 the Xft library calls to obtain a font.
5769
5770 UTF-8 Encoding (resource utf8-mode)
5771 This controls whether xterm uses UTF-8 encoding of
5772 input/output. It is useful for temporarily switching
5773 xterm to display text from an application which does not
5774 follow the locale settings. It corresponds to the utf8
5775 resource.
5776
5777 UTF-8 Fonts (resource utf8-fonts)
5778 This controls whether xterm uses UTF-8 fonts for display.
5779 It is useful for temporarily switching xterm to display
5780 text from an application which does not follow the locale
5781 settings. It combines the utf8 and utf8Fonts resources,
5782 subject to the locale resource.
5783
5784 UTF-8 Titles (resource utf8-title)
5785 This controls whether xterm accepts UTF-8 encoding for
5786 title control sequences. It corresponds to the utf8Fonts
5787 resource.
5788
5789 Initially the checkmark is set according to both the utf8
5790 and utf8Fonts resource values. If the latter is set to
5791 “always”, the checkmark is disabled. Likewise, if there
5792 are no fonts given in the utf8Fonts subresources, then
5793 the checkmark also is disabled.
5794
5795 The standard XTerm app-defaults file defines both sets of
5796 fonts, while the UXTerm app-defaults file defines only
5797 one set. Assuming the standard app-defaults files, this
5798 command will launch xterm able to switch between UTF-8
5799 and ISO-8859-1 encoded fonts:
5800
5801 uxterm -class XTerm
5802
5803 The fourth section allows you to enable or disable special operations
5804 which can be controlled by writing escape sequences to the terminal.
5805 These are disabled if the SendEvents feature is enabled:
5806
5807 Allow Color Ops (resource allow-font-ops)
5808 This corresponds to the allowColorOps resource. Enable
5809 or disable control sequences that set/query the colors.
5810
5811 Allow Font Ops (resource allow-font-ops)
5812 This corresponds to the allowFontOps resource. Enable or
5813 disable control sequences that set/query the font.
5814
5815 Allow Mouse Ops (resource allow-mouse-ops)
5816 Enable or disable control sequences that cause the
5817 terminal to send escape sequences on pointer-clicks and
5818 movement. This corresponds to the allowMouseOps
5819 resource.
5820
5821 Allow Tcap Ops (resource allow-tcap-ops)
5822 Enable or disable control sequences that query the
5823 terminal's notion of its function-key strings, as termcap
5824 or terminfo capabilities. This corresponds to the
5825 allowTcapOps resource.
5826
5827 Allow Title Ops (resource allow-title-ops)
5828 Enable or disable control sequences that modify the
5829 window title or icon name. This corresponds to the
5830 allowTitleOps resource.
5831
5832 Allow Window Ops (resource allow-window-ops)
5833 Enable or disable extended window control sequences (as
5834 used in dtterm). This corresponds to the allowWindowOps
5835 resource.
5836
5837 Tek Options
5838 The xterm tekMenu sets various modes in the Tektronix emulation, and is
5839 popped up when the “control” key and pointer button two are pressed in
5840 the Tektronix window. The current font size is checked in the modes
5841 section of the menu.
5842
5843 Large Characters (resource tektextlarge)
5844
5845 #2 Size Characters (resource tektext2)
5846
5847 #3 Size Characters (resource tektext3)
5848
5849 Small Characters (resource tektextsmall)
5850
5851 Commands:
5852
5853 PAGE (resource tekpage)
5854 Simulates the Tektronix “PAGE” button by
5855
5856 • clearing the window,
5857
5858 • cancelling the graphics input-mode, and
5859
5860 • moving the cursor to the home position.
5861
5862 RESET (resource tekreset)
5863 Unlike the similarly-named Tektronix “RESET” button, this
5864 does everything that PAGE does as well as resetting the
5865 line-type and font-size to their default values.
5866
5867 COPY (resource tekcopy)
5868 Simulates the Tektronix “COPY” button (which makes a
5869 hard-copy of the screen) by writing the information to a
5870 text file.
5871
5872 Windows:
5873
5874 Show VT Window (resource vtshow)
5875
5876 Switch to VT Mode (resource vtmode)
5877
5878 Hide Tek Window (resource tekhide)
5879
5881 X environments differ in their security consciousness.
5882
5883 • Most servers, run under xdm, are capable of using a “magic cookie”
5884 authorization scheme that can provide a reasonable level of
5885 security for many people. If your server is only using a host-
5886 based mechanism to control access to the server (see xhost(1)),
5887 then if you enable access for a host and other users are also
5888 permitted to run clients on that same host, it is possible that
5889 someone can run an application which uses the basic services of the
5890 X protocol to snoop on your activities, potentially capturing a
5891 transcript of everything you type at the keyboard.
5892
5893 • Any process which has access to your X display can manipulate it in
5894 ways that you might not anticipate, even redirecting your keyboard
5895 to itself and sending events to your application's windows. This
5896 is true even with the “magic cookie” authorization scheme. While
5897 the allowSendEvents provides some protection against rogue
5898 applications tampering with your programs, guarding against a
5899 snooper is harder.
5900
5901 • The X input extension for instance allows an application to bypass
5902 all of the other (limited) authorization and security features,
5903 including the GrabKeyboard protocol.
5904
5905 • The possibility of an application spying on your keystrokes is of
5906 particular concern when you want to type in a password or other
5907 sensitive data. The best solution to this problem is to use a
5908 better authorization mechanism than is provided by X.
5909
5910 Subject to all of these caveats, a simple mechanism exists for
5911 protecting keyboard input in xterm.
5912
5913 The xterm menu (see MENUS above) contains a Secure Keyboard entry
5914 which, when enabled, attempts to ensure that all keyboard input is
5915 directed only to xterm (using the GrabKeyboard protocol request). When
5916 an application prompts you for a password (or other sensitive data),
5917 you can enable Secure Keyboard using the menu, type in the data, and
5918 then disable Secure Keyboard using the menu again.
5919
5920 • This ensures that you know which window is accepting your
5921 keystrokes.
5922
5923 • It cannot ensure that there are no processes which have access to
5924 your X display that might be observing the keystrokes as well.
5925
5926 Only one X client at a time can grab the keyboard, so when you attempt
5927 to enable Secure Keyboard it may fail. In this case, the bell will
5928 sound. If the Secure Keyboard succeeds, the foreground and background
5929 colors will be exchanged (as if you selected the Enable Reverse Video
5930 entry in the Modes menu); they will be exchanged again when you exit
5931 secure mode. If the colors do not switch, then you should be very
5932 suspicious that you are being spoofed. If the application you are
5933 running displays a prompt before asking for the password, it is safest
5934 to enter secure mode before the prompt gets displayed, and to make sure
5935 that the prompt gets displayed correctly (in the new colors), to
5936 minimize the probability of spoofing. You can also bring up the menu
5937 again and make sure that a check mark appears next to the entry.
5938
5939 Secure Keyboard mode will be disabled automatically if your xterm
5940 window becomes iconified (or otherwise unmapped), or if you start up a
5941 reparenting window manager (that places a title bar or other decoration
5942 around the window) while in Secure Keyboard mode. (This is a feature
5943 of the X protocol not easily overcome.) When this happens, the
5944 foreground and background colors will be switched back and the bell
5945 will sound in warning.
5946
5948 Clicking the left pointer button twice in rapid succession (double-
5949 clicking) causes all characters of the same class (e.g., letters, white
5950 space, punctuation) to be selected as a “word”. Since different people
5951 have different preferences for what should be selected (for example,
5952 should filenames be selected as a whole or only the separate subnames),
5953 the default mapping can be overridden through the use of the charClass
5954 (class CharClass) resource.
5955
5956 This resource is a series of comma-separated range:value pairs.
5957
5958 • The range is either a single number or low-high in the range of 0
5959 to 65535, corresponding to the code for the character or characters
5960 to be set.
5961
5962 • The value is arbitrary. For example, the default table uses the
5963 character number of the first character occurring in the set. When
5964 not in UTF-8 mode, only the first 256 entries of this table will be
5965 used.
5966
5967 The default table starts as follows -
5968
5969 static int charClass[256] = {
5970 /* NUL SOH STX ETX EOT ENQ ACK BEL */
5971 32, 1, 1, 1, 1, 1, 1, 1,
5972 /* BS HT NL VT NP CR SO SI */
5973 1, 32, 1, 1, 1, 1, 1, 1,
5974 /* DLE DC1 DC2 DC3 DC4 NAK SYN ETB */
5975 1, 1, 1, 1, 1, 1, 1, 1,
5976 /* CAN EM SUB ESC FS GS RS US */
5977 1, 1, 1, 1, 1, 1, 1, 1,
5978 /* SP ! " # $ % & ' */
5979 32, 33, 34, 35, 36, 37, 38, 39,
5980 /* ( ) * + , - . / */
5981 40, 41, 42, 43, 44, 45, 46, 47,
5982 /* 0 1 2 3 4 5 6 7 */
5983 48, 48, 48, 48, 48, 48, 48, 48,
5984 /* 8 9 : ; < = > ? */
5985 48, 48, 58, 59, 60, 61, 62, 63,
5986 /* @ A B C D E F G */
5987 64, 48, 48, 48, 48, 48, 48, 48,
5988 /* H I J K L M N O */
5989 48, 48, 48, 48, 48, 48, 48, 48,
5990 /* P Q R S T U V W */
5991 48, 48, 48, 48, 48, 48, 48, 48,
5992 /* X Y Z [ \ ] ^ _ */
5993 48, 48, 48, 91, 92, 93, 94, 48,
5994 /* ` a b c d e f g */
5995 96, 48, 48, 48, 48, 48, 48, 48,
5996 /* h i j k l m n o */
5997 48, 48, 48, 48, 48, 48, 48, 48,
5998 /* p q r s t u v w */
5999 48, 48, 48, 48, 48, 48, 48, 48,
6000 /* x y z { | } ~ DEL */
6001 48, 48, 48, 123, 124, 125, 126, 1,
6002 /* x80 x81 x82 x83 IND NEL SSA ESA */
6003 1, 1, 1, 1, 1, 1, 1, 1,
6004 /* HTS HTJ VTS PLD PLU RI SS2 SS3 */
6005 1, 1, 1, 1, 1, 1, 1, 1,
6006 /* DCS PU1 PU2 STS CCH MW SPA EPA */
6007 1, 1, 1, 1, 1, 1, 1, 1,
6008 /* x98 x99 x9A CSI ST OSC PM APC */
6009 1, 1, 1, 1, 1, 1, 1, 1,
6010 /* - i c/ L ox Y- | So */
6011 160, 161, 162, 163, 164, 165, 166, 167,
6012 /* .. c0 ip << _ R0 - */
6013 168, 169, 170, 171, 172, 173, 174, 175,
6014 /* o +- 2 3 ' u q| . */
6015 176, 177, 178, 179, 180, 181, 182, 183,
6016 /* , 1 2 >> 1/4 1/2 3/4 ? */
6017 184, 185, 186, 187, 188, 189, 190, 191,
6018 /* A` A' A^ A~ A: Ao AE C, */
6019 48, 48, 48, 48, 48, 48, 48, 48,
6020 /* E` E' E^ E: I` I' I^ I: */
6021 48, 48, 48, 48, 48, 48, 48, 48,
6022 /* D- N~ O` O' O^ O~ O: X */
6023 48, 48, 48, 48, 48, 48, 48, 215,
6024 /* O/ U` U' U^ U: Y' P B */
6025 48, 48, 48, 48, 48, 48, 48, 48,
6026 /* a` a' a^ a~ a: ao ae c, */
6027 48, 48, 48, 48, 48, 48, 48, 48,
6028 /* e` e' e^ e: i` i' i^ i: */
6029 48, 48, 48, 48, 48, 48, 48, 48,
6030 /* d n~ o` o' o^ o~ o: -: */
6031 48, 48, 48, 48, 48, 48, 48, 247,
6032 /* o/ u` u' u^ u: y' P y: */
6033 48, 48, 48, 48, 48, 48, 48, 48};
6034
6035 For example, the string “33:48,37:48,45-47:48,38:48” indicates
6036 that the exclamation mark, percent sign, dash, period, slash,
6037 and ampersand characters should be treated the same way as
6038 characters and numbers. This is useful for cutting and pasting
6039 electronic mailing addresses and filenames.
6040
6042 It is possible to rebind keys (or sequences of keys) to arbitrary
6043 strings for input, by changing the translations resources for the vt100
6044 or tek4014 widgets. Changing the translations resource for events
6045 other than key and button events is not expected, and will cause
6046 unpredictable behavior.
6047
6048 Actions
6049 The following actions are provided for use within the vt100 or tek4014
6050 translations resources:
6051
6052 allow-bold-fonts(on/off/toggle)
6053 This action sets, unsets or toggles the allowBoldFonts resource
6054 and is also invoked by the allow-bold-fonts entry in fontMenu.
6055
6056 allow-color-ops(on/off/toggle)
6057 This action sets, unsets or toggles the allowColorOps resource
6058 and is also invoked by the allow-color-ops entry in fontMenu.
6059
6060 allow-font-ops(on/off/toggle)
6061 This action sets, unsets or toggles the allowFontOps resource
6062 and is also invoked by the allow-font-ops entry in fontMenu.
6063
6064 allow-mouse-ops(on/off/toggle)
6065 This action sets, unsets or toggles the allowMousepOps resource
6066 and is also invoked by the allow-mouse-ops entry in fontMenu.
6067
6068 allow-send-events(on/off/toggle)
6069 This action sets, unsets or toggles the allowSendEvents
6070 resource and is also invoked by the allowsends entry in
6071 mainMenu.
6072
6073 allow-tcap-ops(on/off/toggle)
6074 This action sets, unsets or toggles the allowTcapOps resource
6075 and is also invoked by the allow-tcap-ops entry in fontMenu.
6076
6077 allow-title-ops(on/off/toggle)
6078 This action sets, unsets or toggles the allowTitleOps resource
6079 and is also invoked by the allow-title-ops entry in fontMenu.
6080
6081 allow-window-ops(on/off/toggle)
6082 This action sets, unsets or toggles the allowWindowOps resource
6083 and is also invoked by the allow-window-ops entry in fontMenu.
6084
6085 alt-sends-escape()
6086 This action toggles the state of the altSendsEscape resource.
6087
6088 bell([percent])
6089 This action rings the keyboard bell at the specified percentage
6090 above or below the base volume.
6091
6092 clear-saved-lines()
6093 This action does hard-reset() and also clears the history of
6094 lines saved off the top of the screen. It is also invoked from
6095 the clearsavedlines entry in vtMenu. The effect is identical
6096 to a hardware reset (RIS) control sequence.
6097
6098 copy-selection(destname [, ...])
6099 This action puts the currently selected text into all of the
6100 selections or cutbuffers specified by destname. Unlike
6101 select-end, it does not send a mouse position or otherwise
6102 modify the internal selection state.
6103
6104 create-menu(m/v/f/t)
6105 This action creates one of the menus used by xterm, if it has
6106 not been previously created. The parameter values are the menu
6107 names: mainMenu, vtMenu, fontMenu, tekMenu, respectively.
6108
6109 dabbrev-expand()
6110 Expands the word before cursor by searching in the preceding
6111 text on the screen and in the scrollback buffer for words
6112 starting with that abbreviation. Repeating dabbrev-expand()
6113 several times in sequence searches for an alternative expansion
6114 by looking farther back. Lack of more matches is signaled by a
6115 bell. Attempts to expand an empty word (i.e., when cursor is
6116 preceded by a space) yield successively all previous words.
6117 Consecutive identical expansions are ignored. The word here is
6118 defined as a sequence of non-whitespace characters. This
6119 feature partially emulates the behavior of “dynamic
6120 abbreviation” expansion in Emacs (bound there to M-/). Here is
6121 a resource setting for xterm which will do the same thing:
6122
6123 *VT100*translations: #override \n\
6124 Meta <KeyPress> /:dabbrev-expand()
6125
6126 deiconify()
6127 Changes the window state back to normal, if it was iconified.
6128
6129 delete-is-del()
6130 This action toggles the state of the deleteIsDEL resource.
6131
6132 dired-button()
6133 Handles a button event (other than press and release) by
6134 echoing the event's position (i.e., character line and column)
6135 in the following format:
6136
6137 ^X ESC G <line+“ ”> <col+“ ”>
6138
6139 dump-html()
6140 Invokes the XHTML Screen Dump feature.
6141
6142 dump-svg()
6143 Invokes the SVG Screen Dump feature.
6144
6145 exec-formatted(format, sourcename [, ...])
6146 Execute an external command, using the current selection for
6147 part of the command's parameters. The first parameter, format
6148 gives the basic command. Succeeding parameters specify the
6149 selection source as in insert-selection.
6150
6151 The format parameter allows these substitutions:
6152
6153 %% inserts a "%".
6154
6155 %P the screen-position at the beginning of the highlighted
6156 region, as a semicolon-separated pair of integers using
6157 the values that the CUP control sequence would use.
6158
6159 %p the screen-position after the beginning of the highlighted
6160 region, using the same convention as “%P”.
6161
6162 %S the length of the string that “%s” would insert.
6163
6164 %s the content of the selection, unmodified.
6165
6166 %T the length of the string that “%t” would insert.
6167
6168 %t the selection, trimmed of leading/trailing whitespace.
6169 Embedded spaces (and newlines) are copied as is.
6170
6171 %R the length of the string that “%r” would insert.
6172
6173 %r the selection, trimmed of trailing whitespace.
6174
6175 %V the video attributes at the beginning of the highlighted
6176 region, as a semicolon-separated list of integers using
6177 the values that the SGR control sequence would use.
6178
6179 %v the video attributes after the end of the highlighted
6180 region, using the same convention as “%V”.
6181
6182 After constructing the command-string, xterm forks a subprocess
6183 and executes the command, which completes independently of
6184 xterm.
6185
6186 For example, this translation would invoke a new xterm process
6187 to view a file whose name is selected while holding the shift
6188 key down. The new process is started when the mouse button is
6189 released:
6190
6191 *VT100*translations: #override Shift \
6192 <Btn1Up>:exec-formatted("xterm -e view '%t'", SELECT)
6193
6194 exec-selectable(format, onClicks)
6195 Execute an external command, using data copied from the screen
6196 for part of the command's parameters. The first parameter,
6197 format gives the basic command as in exec-formatted. The
6198 second parameter specifies the method for copying the data as
6199 in the on2Clicks resource.
6200
6201 fullscreen(on/off/toggle)
6202 This action sets, unsets or toggles the fullscreen resource.
6203
6204 hard-reset()
6205 This action resets the scrolling region, tabs, window size, and
6206 cursor keys and clears the screen. It is also invoked from the
6207 hardreset entry in vtMenu.
6208
6209 iconify()
6210 Iconifies the window.
6211
6212 ignore()
6213 This action ignores the event but checks for special pointer
6214 position escape sequences.
6215
6216 insert()
6217 This action inserts the character or string associated with the
6218 key that was pressed.
6219
6220 insert-eight-bit()
6221 This action inserts an eight-bit (Meta) version of the
6222 character or string associated with the key that was pressed.
6223 Only single-byte values are treated specially. The exact
6224 action depends on the value of the altSendsEscape and the
6225 metaSendsEscape and the eightBitInput resources. The
6226 metaSendsEscape resource is tested first. See the
6227 eightBitInput resource for a full discussion.
6228
6229 The term “eight-bit” is misleading: xterm checks if the key is
6230 in the range 128 to 255 (the eighth bit is set). If the value
6231 is in that range, depending on the resource values, xterm may
6232 then do one of the following:
6233
6234 • add 128 to the value, setting its eighth bit,
6235
6236 • send an ESC byte before the key, or
6237
6238 • send the key unaltered.
6239
6240 insert-formatted(format, sourcename [, ...])
6241 Insert the current selection or data related to it, formatted.
6242 The first parameter, format gives the template for the data as
6243 in exec-formatted. Succeeding parameters specify the selection
6244 source as in insert-selection.
6245
6246 insert-selectable(format, onClicks)
6247 Insert data copied from the screen, formatted. The first
6248 parameter, format gives the template for the data as in
6249 exec-formatted. The second parameter specifies the method for
6250 copying the data as in the on2Clicks resource.
6251
6252 insert-selection(sourcename [, ...])
6253 This action inserts the string found in the selection or
6254 cutbuffer indicated by sourcename. Sources are checked in the
6255 order given (case is significant) until one is found.
6256 Commonly-used selections include: PRIMARY, SECONDARY, and
6257 CLIPBOARD. Cut buffers are typically named CUT_BUFFER0 through
6258 CUT_BUFFER7.
6259
6260 insert-seven-bit()
6261 This action is a synonym for insert(). The term “seven-bit” is
6262 misleading: it only implies that xterm does not try to add 128
6263 to the key's value as in insert-eight-bit().
6264
6265 interpret(control-sequence)
6266 Interpret the given control sequence locally, i.e., without
6267 passing it to the host. This works by inserting the control
6268 sequence at the front of the input buffer. Use “\” to escape
6269 octal digits in the string. Xt does not allow you to put a
6270 null character (i.e., “\000”) in the string.
6271
6272 keymap(name)
6273 This action dynamically defines a new translation table whose
6274 resource name is name with the suffix “Keymap” (i.e.,
6275 nameKeymap, where case is significant). The name None restores
6276 the original translation table.
6277
6278 larger-vt-font()
6279 Set the font to the next larger one, based on the font
6280 dimensions. See also set-vt-font().
6281
6282 load-vt-fonts(name[,class])
6283 Load fontnames from the given subresource name and class. That
6284 is, load the “*VT100.name.font”, resource as “*VT100.font” etc.
6285 If no name is given, the original set of fontnames is restored.
6286
6287 Unlike set-vt-font(), this does not affect the escape- and
6288 select-fonts, since those are not based on resource values. It
6289 does affect the fonts loosely organized under the “Default”
6290 menu entry, including font, boldFont, wideFont and
6291 wideBoldFont.
6292
6293 maximize()
6294 Resizes the window to fill the screen.
6295
6296 meta-sends-escape()
6297 This action toggles the state of the metaSendsEscape resource.
6298
6299 pointer-button()
6300 Use this action as a fall-back to handle button press- and
6301 release-events for the mouse control sequence protocol when the
6302 selection-related translations are suppressed with the
6303 omitTranslation resource.
6304
6305 pointer-motion()
6306 Use this action as a fall-back to handle motion-events for the
6307 mouse control sequence protocol when the selection-related
6308 translations are suppressed with the omitTranslation resource.
6309
6310 popup-menu(menuname)
6311 This action displays the specified popup menu. Valid names
6312 (case is significant) include: mainMenu, vtMenu, fontMenu, and
6313 tekMenu.
6314
6315 print(printer-flags)
6316 This action prints the window. It is also invoked by the print
6317 entry in mainMenu.
6318
6319 The action accepts optional parameters, which temporarily
6320 override resource settings. The parameter values are matched
6321 ignoring case:
6322
6323 noFormFeed
6324 no form feed will be sent at the end of the last line
6325 printed (i.e., printerFormFeed is “false”).
6326
6327 FormFeed
6328 a form feed will be sent at the end of the last line
6329 printed (i.e., printerFormFeed is “true”).
6330
6331 noNewLine
6332 no newline will be sent at the end of the last line
6333 printed, and wrapped lines will be combined into long
6334 lines (i.e., printerNewLine is “false”).
6335
6336 NewLine
6337 a newline will be sent at the end of the last line
6338 printed, and each line will be limited (by adding a
6339 newline) to the screen width (i.e., printerNewLine is
6340 “true”).
6341
6342 noAttrs
6343 the page is printed without attributes (i.e.,
6344 printAttributes is “0”).
6345
6346 monoAttrs
6347 the page is printed with monochrome (vt220) attributes
6348 (i.e., printAttributes is “1”).
6349
6350 colorAttrs
6351 the page is printed with ANSI color attributes (i.e.,
6352 printAttributes is “2”).
6353
6354 print-everything(printer-flags)
6355 This action sends the entire text history, in addition to the
6356 text currently visible, to the program given in the
6357 printerCommand resource. It allows the same optional
6358 parameters as the print action. With a suitable printer
6359 command, the action can be used to load the text history in an
6360 editor.
6361
6362 print-immediate()
6363 Sends the text of the current window directly to a file, as
6364 specified by the printFileImmediate, printModeImmediate and
6365 printOptsImmediate resources.
6366
6367 print-on-error()
6368 Toggles a flag telling xterm that if it exits with an X error,
6369 to send the text of the current window directly to a file, as
6370 specified by the printFileOnXError, printModeOnXError and
6371 printOptsOnXError resources.
6372
6373 print-redir()
6374 This action toggles the printerControlMode between 0 and 2.
6375 The corresponding popup menu entry is useful for switching the
6376 printer off if you happen to change your mind after deciding to
6377 print random binary files on the terminal.
6378
6379 quit()
6380 This action sends a SIGHUP to the subprogram and exits. It is
6381 also invoked by the quit entry in mainMenu.
6382
6383 readline-button()
6384 Supports the optional readline feature by echoing repeated
6385 cursor forward or backward control sequences on button release
6386 event, to request that the host application update its notion
6387 of the cursor's position to match the button event.
6388
6389 redraw()
6390 This action redraws the window. It is also invoked by the
6391 redraw entry in mainMenu.
6392
6393 restore()
6394 Restores the window to the size before it was last maximized.
6395
6396 scroll-back(count [,units [,mouse] ])
6397 This action scrolls the text window backward so that text that
6398 had previously scrolled off the top of the screen is now
6399 visible.
6400
6401 The count argument indicates the number of units (which may be
6402 page, halfpage, pixel, or line) by which to scroll. If no
6403 count parameter is given, xterm uses the number of lines given
6404 by the scrollLines resource.
6405
6406 An adjustment can be specified for the page or halfpage units
6407 by appending a “+” or “-” sign followed by a number, e.g.,
6408 page-2 to specify 2 lines less than a page.
6409
6410 If the second parameter is omitted “lines” is used.
6411
6412 If the third parameter mouse is given, the action is ignored
6413 when mouse reporting is enabled.
6414
6415 scroll-forw(count [,units [,mouse] ])
6416 This action is similar to scroll-back except that it scrolls in
6417 the other direction.
6418
6419 scroll-lock(on/off/toggle)
6420 This action sets, unsets or toggles internal state which tells
6421 xterm whether Scroll Lock is active, subject to the
6422 allowScrollLock resource.
6423
6424 scroll-to(count)
6425 Scroll to the given line relative to the beginning of the
6426 saved-lines. For instance, “scroll-to(0)” would scroll to the
6427 beginning. Two special nonnumeric parameters are recognized:
6428
6429 scroll-to(begin)
6430 Scroll to the beginning of the saved lines.
6431
6432 scroll-to(end)
6433 Scroll to the end of the saved lines, i.e., to the
6434 currently active page.
6435
6436 secure()
6437 This action toggles the Secure Keyboard mode (see SECURITY),
6438 and is invoked from the securekbd entry in mainMenu.
6439
6440 select-cursor-end(destname [, ...])
6441 This action is similar to select-end except that it should be
6442 used with select-cursor-start.
6443
6444 select-cursor-extend()
6445 This action is similar to select-extend except that it should
6446 be used with select-cursor-start.
6447
6448 select-cursor-start()
6449 This action is similar to select-start except that it begins
6450 the selection at the current text cursor position.
6451
6452 select-end(destname [, ...])
6453 This action puts the currently selected text into all of the
6454 selections or cutbuffers specified by destname. It also sends
6455 a mouse position and updates the internal selection state to
6456 reflect the end of the selection process.
6457
6458 select-extend()
6459 This action tracks the pointer and extends the selection. It
6460 should only be bound to Motion events.
6461
6462 select-set()
6463 This action stores text that corresponds to the current
6464 selection, without affecting the selection mode.
6465
6466 select-start()
6467 This action begins text selection at the current pointer
6468 location. See the section on POINTER USAGE for information on
6469 making selections.
6470
6471 send-signal(signame)
6472 This action sends the signal named by signame to the xterm
6473 subprocess (the shell or program specified with the -e command
6474 line option). It is also invoked by the suspend, continue,
6475 interrupt, hangup, terminate, and kill entries in mainMenu.
6476 Allowable signal names are (case is not significant): tstp (if
6477 supported by the operating system), suspend (same as tstp),
6478 cont (if supported by the operating system), int, hup, term,
6479 quit, alrm, alarm (same as alrm) and kill.
6480
6481 set-8-bit-control(on/off/toggle)
6482 This action sets, unsets or toggles the eightBitControl
6483 resource. It is also invoked from the 8-bit-control entry in
6484 vtMenu.
6485
6486 set-allow132(on/off/toggle)
6487 This action sets, unsets or toggles the c132 resource. It is
6488 also invoked from the allow132 entry in vtMenu.
6489
6490 set-altscreen(on/off/toggle)
6491 This action sets, unsets or toggles between the alternate and
6492 current screens.
6493
6494 set-appcursor(on/off/toggle)
6495 This action sets, unsets or toggles the handling Application
6496 Cursor Key mode and is also invoked by the appcursor entry in
6497 vtMenu.
6498
6499 set-appkeypad(on/off/toggle)
6500 This action sets, unsets or toggles the handling of Application
6501 Keypad mode and is also invoked by the appkeypad entry in
6502 vtMenu.
6503
6504 set-autolinefeed(on/off/toggle)
6505 This action sets, unsets or toggles automatic insertion of line
6506 feeds. It is also invoked by the autolinefeed entry in vtMenu.
6507
6508 set-autowrap(on/off/toggle)
6509 This action sets, unsets or toggles automatic wrapping of long
6510 lines. It is also invoked by the autowrap entry in vtMenu.
6511
6512 set-backarrow(on/off/toggle)
6513 This action sets, unsets or toggles the backarrowKey resource.
6514 It is also invoked from the backarrow key entry in vtMenu.
6515
6516 set-bellIsUrgent(on/off/toggle)
6517 This action sets, unsets or toggles the bellIsUrgent resource.
6518 It is also invoked by the bellIsUrgent entry in vtMenu.
6519
6520 set-cursesemul(on/off/toggle)
6521 This action sets, unsets or toggles the curses resource. It is
6522 also invoked from the cursesemul entry in vtMenu.
6523
6524 set-cursorblink(on/off/toggle)
6525 This action sets, unsets or toggles the cursorBlink resource.
6526 It is also invoked from the cursorblink entry in vtMenu.
6527
6528 set-font-doublesize(on/off/toggle)
6529 This action sets, unsets or toggles the fontDoublesize
6530 resource. It is also invoked by the font-doublesize entry in
6531 fontMenu.
6532
6533 set-font-linedrawing(on/off/toggle)
6534 This action sets, unsets or toggles the xterm's state regarding
6535 whether the current font has line-drawing characters and
6536 whether it should draw them directly. It is also invoked by
6537 the font-linedrawing entry in fontMenu.
6538
6539 set-font-packed(on/off/toggle)
6540 This action sets, unsets or toggles the forcePackedFont
6541 resource which controls use of the font's minimum or maximum
6542 glyph width. It is also invoked by the font-packed entry in
6543 fontMenu.
6544
6545 set-hp-function-keys(on/off/toggle)
6546 This action sets, unsets or toggles the hpFunctionKeys
6547 resource. It is also invoked by the hpFunctionKeys entry in
6548 mainMenu.
6549
6550 set-jumpscroll(on/off/toggle)
6551 This action sets, unsets or toggles the jumpscroll resource.
6552 It is also invoked by the jumpscroll entry in vtMenu.
6553
6554 set-keep-clipboard(on/off/toggle)
6555 This action sets, unsets or toggles the keepClipboard resource.
6556
6557 set-keep-selection(on/off/toggle)
6558 This action sets, unsets or toggles the keepSelection resource.
6559 It is also invoked by the keepSelection entry in vtMenu.
6560
6561 set-logging(on/off/toggle)
6562 This action sets, unsets or toggles the state of the logging
6563 option.
6564
6565 set-marginbell(on/off/toggle)
6566 This action sets, unsets or toggles the marginBell resource.
6567
6568 set-num-lock(on/off/toggle)
6569 This action toggles the state of the numLock resource.
6570
6571 set-old-function-keys(on/off/toggle)
6572 This action sets, unsets or toggles the state of legacy
6573 function keys. It is also invoked by the oldFunctionKeys entry
6574 in mainMenu.
6575
6576 set-pop-on-bell(on/off/toggle)
6577 This action sets, unsets or toggles the popOnBell resource. It
6578 is also invoked by the poponbell entry in vtMenu.
6579
6580 set-private-colors(on/off/toggle)
6581 This action sets, unsets or toggles the privateColorRegisters
6582 resource.
6583
6584 set-render-font(on/off/toggle)
6585 This action sets, unsets or toggles the renderFont resource.
6586 It is also invoked by the render-font entry in fontMenu.
6587
6588 set-reverse-video(on/off/toggle)
6589 This action sets, unsets or toggles the reverseVideo resource.
6590 It is also invoked by the reversevideo entry in vtMenu.
6591
6592 set-reversewrap(on/off/toggle)
6593 This action sets, unsets or toggles the reverseWrap resource.
6594 It is also invoked by the reversewrap entry in vtMenu.
6595
6596 set-sco-function-keys(on/off/toggle)
6597 This action sets, unsets or toggles the scoFunctionKeys
6598 resource. It is also invoked by the scoFunctionKeys entry in
6599 mainMenu.
6600
6601 set-scroll-on-key(on/off/toggle)
6602 This action sets, unsets or toggles the scrollKey resource. It
6603 is also invoked from the scrollkey entry in vtMenu.
6604
6605 set-scroll-on-tty-output(on/off/toggle)
6606 This action sets, unsets or toggles the scrollTtyOutput
6607 resource. It is also invoked from the scrollttyoutput entry in
6608 vtMenu.
6609
6610 set-scrollbar(on/off/toggle)
6611 This action sets, unsets or toggles the scrollbar resource. It
6612 is also invoked by the scrollbar entry in vtMenu.
6613
6614 set-select(on/off/toggle)
6615 This action sets, unsets or toggles the selectToClipboard
6616 resource. It is also invoked by the selectToClipboard entry in
6617 vtMenu.
6618
6619 set-sixel-scrolling(on/off/toggle)
6620 This action toggles between inline (sixel scrolling) and
6621 absolute positioning. It can also be controlled via DEC
6622 private mode 80 (DECSDM) or from the sixelScrolling entry in
6623 the btMenu.
6624
6625 set-sun-function-keys(on/off/toggle)
6626 This action sets, unsets or toggles the sunFunctionKeys
6627 resource. It is also invoked by the sunFunctionKeys entry in
6628 mainMenu.
6629
6630 set-sun-keyboard(on/off/toggle)
6631 This action sets, unsets or toggles the sunKeyboard resource.
6632 It is also invoked by the sunKeyboard entry in mainMenu.
6633
6634 set-tek-text(large/2/3/small)
6635 This action sets the font used in the Tektronix window to the
6636 value of the selected resource according to the argument. The
6637 argument can be either a keyword or single-letter alias, as
6638 shown in parentheses:
6639
6640 large (l)
6641 Use resource fontLarge, same as menu entry tektextlarge.
6642
6643 two (2)
6644 Use resource font2, same as menu entry tektext2.
6645
6646 three (3)
6647 Use resource font3, same as menu entry tektext3.
6648
6649 small (s)
6650 Use resource fontSmall, same as menu entry tektextsmall.
6651
6652 set-terminal-type(type)
6653 This action directs output to either the vt or tek windows,
6654 according to the type string. It is also invoked by the
6655 tekmode entry in vtMenu and the vtmode entry in tekMenu.
6656
6657 set-titeInhibit(on/off/toggle)
6658 This action sets, unsets or toggles the titeInhibit resource,
6659 which controls switching between the alternate and current
6660 screens.
6661
6662 set-toolbar(on/off/toggle)
6663 This action sets, unsets or toggles the toolbar feature. It is
6664 also invoked by the toolbar entry in mainMenu.
6665
6666 set-utf8-fonts(on/off/toggle)
6667 This action sets, unsets or toggles the utf8Fonts resource. It
6668 is also invoked by the utf8-fonts entry in fontMenu.
6669
6670 set-utf8-mode(on/off/toggle)
6671 This action sets, unsets or toggles the utf8 resource. It is
6672 also invoked by the utf8-mode entry in fontMenu.
6673
6674 set-utf8-title(on/off/toggle)
6675 This action sets, unsets or toggles the utf8Title resource. It
6676 is also invoked by the utf8-title entry in fontMenu.
6677
6678 set-visibility(vt/tek,on/off/toggle)
6679 This action sets, unsets or toggles whether or not the vt or
6680 tek windows are visible. It is also invoked from the tekshow
6681 and vthide entries in vtMenu and the vtshow and tekhide entries
6682 in tekMenu.
6683
6684 set-visual-bell(on/off/toggle)
6685 This action sets, unsets or toggles the visualBell resource.
6686 It is also invoked by the visualbell entry in vtMenu.
6687
6688 set-vt-font(d/1/2/3/4/5/6/7/e/s [,normalfont [, boldfont]])
6689 This action sets the font or fonts currently being used in the
6690 VTxxx window. The first argument is a single character that
6691 specifies the font to be used:
6692
6693 d or D indicate the default font (the font initially used when
6694 xterm was started),
6695
6696 1 through 7 indicate the fonts specified by the font1 through
6697 font7 resources,
6698
6699 e or E indicate the normal and bold fonts that have been set
6700 through escape codes (or specified as the second and
6701 third action arguments, respectively), and
6702
6703 s or S indicate the font selection (as made by programs such as
6704 xfontsel(1)) indicated by the second action argument.
6705
6706 If xterm is configured to support wide characters, an
6707 additional two optional parameters are recognized for the e
6708 argument: wide font and wide bold font.
6709
6710 smaller-vt-font()
6711 Set the font to the next smaller one, based on the font
6712 dimensions. See also set-vt-font().
6713
6714 soft-reset()
6715 This action resets the scrolling region. It is also invoked
6716 from the softreset entry in vtMenu. The effect is identical to
6717 a soft reset (DECSTR) control sequence.
6718
6719 spawn-new-terminal(params)
6720 Spawn a new xterm process. This is available on systems which
6721 have a modern version of the process filesystem, e.g., “/proc”,
6722 which xterm can read.
6723
6724 Use the “cwd” process entry, e.g., /proc/12345/cwd to obtain
6725 the working directory of the process which is running in the
6726 current xterm.
6727
6728 On systems which have the “exe” process entry, e.g.,
6729 /proc/12345/exe, use this to obtain the actual executable.
6730 Otherwise, use the $PATH variable to find xterm.
6731
6732 If parameters are given in the action, pass them to the new
6733 xterm process.
6734
6735 start-cursor-extend()
6736 This action is similar to select-extend except that the
6737 selection is extended to the current text cursor position.
6738
6739 start-extend()
6740 This action is similar to select-start except that the
6741 selection is extended to the current pointer location.
6742
6743 string(string)
6744 This action inserts the specified text string as if it had been
6745 typed. Quotation is necessary if the string contains
6746 whitespace or non-alphanumeric characters. If the string
6747 argument begins with the characters “0x”, it is interpreted as
6748 a hex character constant.
6749
6750 tek-copy()
6751 This action copies the escape codes used to generate the
6752 current window contents to a file in the current directory
6753 beginning with the name COPY. It is also invoked from the
6754 tekcopy entry in tekMenu.
6755
6756 tek-page()
6757 This action clears the Tektronix window. It is also invoked by
6758 the tekpage entry in tekMenu.
6759
6760 tek-reset()
6761 This action resets the Tektronix window. It is also invoked by
6762 the tekreset entry in tekMenu.
6763
6764 vi-button()
6765 Handles a button event (other than press and release) by
6766 echoing a control sequence computed from the event's line
6767 number in the screen relative to the current line:
6768
6769 ESC ^P
6770
6771 or
6772
6773 ESC ^N
6774
6775 according to whether the event is before, or after the current
6776 line, respectively. The ^N (or ^P) is repeated once for each
6777 line that the event differs from the current line. The control
6778 sequence is omitted altogether if the button event is on the
6779 current line.
6780
6781 visual-bell()
6782 This action flashes the window quickly.
6783
6784 The Tektronix window also has the following action:
6785
6786 gin-press(l/L/m/M/r/R)
6787 This action sends the indicated graphics input code.
6788
6789 Default Key Bindings
6790 The default bindings in the VTxxx window use the SELECT token, which is
6791 set by the selectToClipboard resource. These are for the vt100 widget:
6792
6793 Shift <KeyPress> Prior:scroll-back(1,halfpage) \n\
6794 Shift <KeyPress> Next:scroll-forw(1,halfpage) \n\
6795 Shift <KeyPress> Select:select-cursor-start() \
6796 select-cursor-end(SELECT, CUT_BUFFER0) \n\
6797 Shift <KeyPress> Insert:insert-selection(SELECT, CUT_BUFFER0) \n\
6798 Alt <Key>Return:fullscreen() \n\
6799 <KeyRelease> Scroll_Lock:scroll-lock() \n\
6800 Shift~Ctrl <KeyPress> KP_Add:larger-vt-font() \n\
6801 Shift Ctrl <KeyPress> KP_Add:smaller-vt-font() \n\
6802 Shift <KeyPress> KP_Subtract:smaller-vt-font() \n\
6803 ~Meta <KeyPress>:insert-seven-bit() \n\
6804 Meta <KeyPress>:insert-eight-bit() \n\
6805 !Ctrl <Btn1Down>:popup-menu(mainMenu) \n\
6806 !Lock Ctrl <Btn1Down>:popup-menu(mainMenu) \n\
6807 !Lock Ctrl @Num_Lock <Btn1Down>:popup-menu(mainMenu) \n\
6808 ! @Num_Lock Ctrl <Btn1Down>:popup-menu(mainMenu) \n\
6809 ~Meta <Btn1Down>:select-start() \n\
6810 ~Meta <Btn1Motion>:select-extend() \n\
6811 !Ctrl <Btn2Down>:popup-menu(vtMenu) \n\
6812 !Lock Ctrl <Btn2Down>:popup-menu(vtMenu) \n\
6813 !Lock Ctrl @Num_Lock <Btn2Down>:popup-menu(vtMenu) \n\
6814 ! @Num_Lock Ctrl <Btn2Down>:popup-menu(vtMenu) \n\
6815 ~Ctrl ~Meta <Btn2Down>:ignore() \n\
6816 Meta <Btn2Down>:clear-saved-lines() \n\
6817 ~Ctrl ~Meta <Btn2Up>:insert-selection(SELECT, CUT_BUFFER0) \n\
6818 !Ctrl <Btn3Down>:popup-menu(fontMenu) \n\
6819 !Lock Ctrl <Btn3Down>:popup-menu(fontMenu) \n\
6820 !Lock Ctrl @Num_Lock <Btn3Down>:popup-menu(fontMenu) \n\
6821 ! @Num_Lock Ctrl <Btn3Down>:popup-menu(fontMenu) \n\
6822 ~Ctrl ~Meta <Btn3Down>:start-extend() \n\
6823 ~Meta <Btn3Motion>:select-extend() \n\
6824 Ctrl <Btn4Down>:scroll-back(1,halfpage,m) \n\
6825 Lock Ctrl <Btn4Down>:scroll-back(1,halfpage,m) \n\
6826 Lock @Num_Lock Ctrl <Btn4Down>:scroll-back(1,halfpage,m) \n\
6827 @Num_Lock Ctrl <Btn4Down>:scroll-back(1,halfpage,m) \n\
6828 <Btn4Down>:scroll-back(5,line,m) \n\
6829 Ctrl <Btn5Down>:scroll-forw(1,halfpage,m) \n\
6830 Lock Ctrl <Btn5Down>:scroll-forw(1,halfpage,m) \n\
6831 Lock @Num_Lock Ctrl <Btn5Down>:scroll-forw(1,halfpage,m) \n\
6832 @Num_Lock Ctrl <Btn5Down>:scroll-forw(1,halfpage,m) \n\
6833 <Btn5Down>:scroll-forw(5,line,m) \n\
6834 <BtnUp>:select-end(SELECT, CUT_BUFFER0) \n\
6835 <BtnMotion>:pointer-motion() \n\
6836 <BtnDown>:pointer-button() \n\
6837 <BtnUp>:pointer-button() \n\
6838 <BtnDown>:ignore()
6839
6840 The default bindings in the Tektronix window are analogous but less
6841 extensive. These are for the tek4014 widget:
6842
6843 ~Meta<KeyPress>: insert-seven-bit() \n\
6844 Meta<KeyPress>: insert-eight-bit() \n\
6845 !Ctrl <Btn1Down>: popup-menu(mainMenu) \n\
6846 !Lock Ctrl <Btn1Down>: popup-menu(mainMenu) \n\
6847 !Lock Ctrl @Num_Lock <Btn1Down>: popup-menu(mainMenu) \n\
6848 !Ctrl @Num_Lock <Btn1Down>: popup-menu(mainMenu) \n\
6849 !Ctrl <Btn2Down>: popup-menu(tekMenu) \n\
6850 !Lock Ctrl <Btn2Down>: popup-menu(tekMenu) \n\
6851 !Lock Ctrl @Num_Lock <Btn2Down>: popup-menu(tekMenu) \n\
6852 !Ctrl @Num_Lock <Btn2Down>: popup-menu(tekMenu) \n\
6853 Shift ~Meta<Btn1Down>: gin-press(L) \n\
6854 ~Meta<Btn1Down>: gin-press(l) \n\
6855 Shift ~Meta<Btn2Down>: gin-press(M) \n\
6856 ~Meta<Btn2Down>: gin-press(m) \n\
6857 Shift ~Meta<Btn3Down>: gin-press(R) \n\
6858 ~Meta<Btn3Down>: gin-press(r)
6859
6860 Custom Key Bindings
6861 You can modify the translations resource by overriding parts of it, or
6862 merging your resources with it.
6863
6864 Here is an example which uses shifted select/paste to copy to the
6865 clipboard, and unshifted select/paste for the primary selection. In
6866 each case, a (different) cut buffer is also a target or source of the
6867 select/paste operation. It is important to remember however, that cut
6868 buffers store data in ISO-8859-1 encoding, while selections can store
6869 data in a variety of formats and encodings. While xterm owns the
6870 selection, it highlights it. When it loses the selection, it removes
6871 the corresponding highlight. But you can still paste from the
6872 corresponding cut buffer.
6873
6874 *VT100*translations: #override \n\
6875 ~Shift~Ctrl<Btn2Up>: insert-selection(PRIMARY, CUT_BUFFER0) \n\
6876 Shift~Ctrl<Btn2Up>: insert-selection(CLIPBOARD, CUT_BUFFER1) \n\
6877 ~Shift <BtnUp> : select-end(PRIMARY, CUT_BUFFER0) \n\
6878 Shift <BtnUp> : select-end(CLIPBOARD, CUT_BUFFER1)
6879
6880 In the example, the class name VT100 is used rather than the widget
6881 name. These are different; a class name could apply to more than one
6882 widget. A leading “*” is used because the widget hierarchy above the
6883 vt100 widget depends on whether the toolbar support is compiled into
6884 xterm.
6885
6886 Most of the predefined translations are related to the mouse, with a
6887 few that use some of the special keys on the keyboard. Applications
6888 use special keys (function-keys, cursor-keys, keypad-keys) with
6889 modifiers (shift, control, alt). If xterm defines a translation for a
6890 given combination of special key and modifier, that makes it
6891 unavailable for use by applications within the terminal. For instance,
6892 one might extend the use of Page Up and Page Down keys seen here:
6893
6894 Shift <KeyPress> Prior : scroll-back(1,halfpage) \n\
6895 Shift <KeyPress> Next : scroll-forw(1,halfpage) \n\
6896
6897 to the Home and End keys:
6898
6899 Shift <KeyPress> Home : scroll-to(begin) \n\
6900 Shift <KeyPress> End : scroll-to(end)
6901
6902 but then shift-Home and shift-End would then be unavailable to
6903 applications.
6904
6905 Not everyone finds the three-button mouse bindings easy to use. In a
6906 wheel mouse, the middle button might be the wheel. As an alternative,
6907 you could add a binding using shifted keys:
6908
6909 *VT100*translations: #override \n\
6910 Shift <Key>Home: copy-selection(SELECT) \n\
6911 Shift <Key>Insert: copy-selection(SELECT) \n\
6912 Ctrl Shift <Key>C: copy-selection(SELECT) \n\
6913 Ctrl Shift <Key>V: insert-selection(SELECT)
6914
6915 You would still use the left- and right-mouse buttons (typically 1 and
6916 3) for beginning and extending selections.
6917
6918 Besides mouse problems, there are also keyboards with inconvenient
6919 layouts. Some lack a numeric keypad, making it hard to use the shifted
6920 keypad plus and minus bindings for switching between font sizes. You
6921 can work around that by assigning the actions to more readily accessed
6922 keys:
6923
6924 *VT100*translations: #override \n\
6925 Ctrl <Key> +: larger-vt-font() \n\
6926 Ctrl <Key> -: smaller-vt-font()
6927
6928 The keymap feature allows you to switch between sets of translations.
6929 The sample below shows how the keymap() action may be used to add
6930 special keys for entering commonly-typed words:
6931
6932 *VT100.Translations: #override <Key>F13: keymap(dbx)
6933 *VT100.dbxKeymap.translations: \
6934 <Key>F14: keymap(None) \n\
6935 <Key>F17: string("next") \n\
6936 string(0x0d) \n\
6937 <Key>F18: string("step") \n\
6938 string(0x0d) \n\
6939 <Key>F19: string("continue") \n\
6940 string(0x0d) \n\
6941 <Key>F20: string("print ") \n\
6942 insert-selection(PRIMARY, CUT_BUFFER0)
6943
6944 Default Scrollbar Bindings
6945 Key bindings are normally associated with the vt100 or tek4014 widgets
6946 which act as terminal emulators. Xterm's scrollbar (and toolbar if it
6947 is configured) are separate widgets. Because all of these use the X
6948 Toolkit, they have corresponding translations resources. Those
6949 resources are distinct, and match different patterns, e.g., the
6950 differences in widget-name and number of levels of widgets which they
6951 may contain.
6952
6953 The scrollbar widget is a child of the vt100 widget. It is positioned
6954 on top of the vt100 widget. Toggling the scrollbar on and off causes
6955 the vt100 widget to resize.
6956
6957 The default bindings for the scrollbar widget use only mouse-button
6958 events:
6959
6960 <Btn5Down>: StartScroll(Forward) \n\
6961 <Btn1Down>: StartScroll(Forward) \n\
6962 <Btn2Down>: StartScroll(Continuous) MoveThumb() NotifyThumb() \n\
6963 <Btn3Down>: StartScroll(Backward) \n\
6964 <Btn4Down>: StartScroll(Backward) \n\
6965 <Btn2Motion>: MoveThumb() NotifyThumb() \n\
6966 <BtnUp>: NotifyScroll(Proportional) EndScroll()
6967
6968 Events which the scrollbar widget does not recognize at all are lost.
6969
6970 However, at startup, xterm augments these translations with the default
6971 translations used for the vt100 widget, together with the resource
6972 “actions” which those translations use. Because the scrollbar (or
6973 menubar) widgets do not recognize these actions (but because it has a
6974 corresponding translation), they are passed on to the vt100 widget.
6975
6976 This augmenting of the scrollbar's translations has a few limitations:
6977
6978 • Xterm knows what the default translations are, but there is no
6979 suitable library interface for determining what customizations a
6980 user may have added to the vt100 widget. All that xterm can do is
6981 augment the scrollbar widget to give it the same starting point for
6982 further customization by the user.
6983
6984 • Events in the gap between the widgets may be lost.
6985
6986 • Compose sequences begun in one widget cannot be completed in the
6987 other, because the input methods for each widget do not share
6988 context information.
6989
6990 Most customizations of the scrollbar translations do not concern key
6991 bindings. Rather, users are generally more interested in changing the
6992 bindings of the mouse buttons. For example, some people prefer using
6993 the left pointer button for dragging the scrollbar thumb. That can be
6994 set up by altering the translations resource, e.g.,
6995
6996 *VT100.scrollbar.translations: #override \n\
6997 <Btn5Down>: StartScroll(Forward) \n\
6998 <Btn1Down>: StartScroll(Continuous) MoveThumb() NotifyThumb() \n\
6999 <Btn4Down>: StartScroll(Backward) \n\
7000 <Btn1Motion>: MoveThumb() NotifyThumb() \n\
7001 <BtnUp>: NotifyScroll(Proportional) EndScroll()
7002
7004 Applications can send sequences of characters to the terminal to change
7005 its behavior. Often they are referred to as “ANSI escape sequences” or
7006 just plain “escape sequences” but both terms are misleading:
7007
7008 • ANSI x3.64 (obsolete) which was replaced by ISO 6429 (ECMA-48) gave
7009 rules for the format of these sequences of characters.
7010
7011 • While the original VT100 was claimed to be ANSI-compatible (against
7012 x3.64), there is no freely available version of the ANSI standard
7013 to show where the VT100 differs. Most of the documents which
7014 mention the ANSI standard have additions not found in the original
7015 (such as those based on ansi.sys). So this discussion focuses on
7016 the ISO standards.
7017
7018 • The standard describes only sequences sent from the host to the
7019 terminal. There is no standard for sequences sent by special keys
7020 from the terminal to the host. By convention (and referring to
7021 existing terminals), the format of those sequences usually conforms
7022 to the host-to-terminal standard.
7023
7024 • Some of xterm's sequences do not fit into the standard scheme.
7025 Technically those are “unspecified”. As an example, DEC Screen
7026 Alignment Test (DECALN) is this three-character sequence:
7027
7028 ESC # 8
7029
7030 • Some sequences fit into the standard format, but are not listed in
7031 the standard. These include the sequences used for setting up
7032 scrolling margins and doing forward/reverse scrolling.
7033
7034 • Some of the sequences (in particular, the single-character
7035 functions such as tab and backspace) do not include the escape
7036 character.
7037
7038 With all of that in mind, the standard refers to these sequences of
7039 characters as “control sequences”.
7040
7041 Xterm Control Sequences lists the control sequences which an
7042 application can send xterm to make it perform various operations. Most
7043 of these operations are standardized, from either the DEC or Tektronix
7044 terminals, or from more widely used standards such as ISO-6429.
7045
7046 A few examples of usage are given in this section.
7047
7048 Window and Icon Titles
7049 Some scripts use echo with options -e and -n to tell the shell to
7050 interpret the string “\e” as the escape character and to suppress a
7051 trailing newline on output. Those are not portable, nor recommended.
7052 Instead, use printf (POSIX).
7053
7054 For example, to set the window title to “Hello world!”, you could use
7055 one of these commands in a script:
7056
7057 printf '\033]2;Hello world!\033\\'
7058 printf '\033]2;Hello world!\007'
7059 printf '\033]2;%s\033\\' "Hello world!"
7060 printf '\033]2;%s\007' "Hello world!"
7061
7062 The printf command interprets the octal value “\033” for escape, and
7063 (since it was not given in the format) omits a trailing newline from
7064 the output.
7065
7066 Some programs (such as screen(1)) set both window- and icon-titles at
7067 the same time, using a slightly different control sequence:
7068
7069 printf '\033]0;Hello world!\033\\'
7070 printf '\033]0;Hello world!\007'
7071 printf '\033]0;%s\033\\' "Hello world!"
7072 printf '\033]0;%s\007' "Hello world!"
7073
7074 The difference is the parameter “0” in each command. Most window
7075 managers will honor either window title or icon title. Some will make
7076 a distinction and allow you to set just the icon title. You can tell
7077 xterm to ask for this with a different parameter in the control
7078 sequence:
7079
7080 printf '\033]1;Hello world!\033\\'
7081 printf '\033]1;Hello world!\007'
7082 printf '\033]1;%s\033\\' "Hello world!"
7083 printf '\033]1;%s\007' "Hello world!"
7084
7085 Special Keys
7086 Xterm, like any VT100-compatible terminal emulator, has two modes for
7087 the special keys (cursor-keys, numeric keypad, and certain function-
7088 keys):
7089
7090 • normal mode, which makes the special keys transmit “useful”
7091 sequences such as the control sequence for cursor-up when pressing
7092 the up-arrow, and
7093
7094 • application mode, which uses a different control sequence that
7095 cannot be mistaken for the “useful” sequences.
7096
7097 The main difference between the two modes is that normal mode sequences
7098 start with CSI (escape [) and application mode sequences start with SS3
7099 (escape O).
7100
7101 The terminal is initialized into one of these two modes (usually the
7102 normal mode), based on the terminal description (termcap or terminfo).
7103 The terminal description also has capabilities (strings) defined for
7104 the keypad mode used in curses applications.
7105
7106 There is a problem in using the terminal description for applications
7107 that are not intended to be full-screen curses applications: the
7108 definitions of special keys are only correct for this keypad mode. For
7109 example, some shells (unlike ksh(1), which appears to be hard-coded,
7110 not even using termcap) allow their users to customize key-bindings,
7111 assigning shell actions to special keys.
7112
7113 • bash(1) allows constant strings to be assigned to functions. This
7114 is only successful if the terminal is initialized to application
7115 mode by default, because bash lacks flexibility in this area. It
7116 uses a (less expressive than bash's) readline scripting language
7117 for setting up key bindings, which relies upon the user to
7118 statically enumerate the possible bindings for given values of
7119 $TERM.
7120
7121 • zsh(1) provides an analogous feature, but it accepts runtime
7122 expressions, as well as providing a $terminfo array for scripts.
7123 In particular, one can use the terminal database, transforming when
7124 defining a key-binding. By transforming the output so that CSI and
7125 SS3 are equated, zsh can use the terminal database to obtain useful
7126 definitions for its command-line use regardless of whether the
7127 terminal uses normal or application mode initially. Here is an
7128 example:
7129
7130 [[ "$terminfo[kcuu1]" == "^[O"* ]] && \
7131 bindkey -M viins "${terminfo[kcuu1]/O/[}" \
7132 vi-up-line-or-history
7133
7134 Changing Colors
7135 A few shell programs provide the ability for users to add color and
7136 other video attributes to the shell prompt strings. Users can do this
7137 by setting $PS1 (the primary prompt string). Again, bash and zsh have
7138 provided features not found in ksh. There is a problem, however: the
7139 prompt's width on the screen will not necessarily be the same as the
7140 number of characters. Because there is no guidance in the POSIX
7141 standard, each shell addresses the problem in a different way:
7142
7143 • bash treats characters within “\[” and “\]” as nonprinting (using
7144 no width on the screen).
7145
7146 • zsh treats characters within “%{” and “%}” as nonprinting.
7147
7148 In addition to the difference in syntax, the shells provide different
7149 methods for obtaining useful escape sequences:
7150
7151 • As noted in Special Keys, zsh initializes the $terminfo array with
7152 the terminal capabilities.
7153
7154 It also provides a function echoti which works like tput(1) to
7155 convert a terminal capability with its parameters into a string
7156 that can be written to the terminal.
7157
7158 • Shells lacking a comparable feature (such as bash) can always use
7159 the program tput to do this transformation.
7160
7161 Hard-coded escape sequences are supported by each shell, but are not
7162 recommended because those rely upon particular configurations and
7163 cannot be easily moved between different user environments.
7164
7166 Xterm sets several environment variables.
7167
7168 System Independent
7169 Some variables are used on every system:
7170
7171 DISPLAY
7172 is the display name, pointing to the X server (see DISPLAY NAMES
7173 in X(7)).
7174
7175 TERM
7176 is set according to the terminfo (or termcap) entry which it is
7177 using as a reference.
7178
7179 On some systems, you may encounter situations where the shell
7180 which you use and xterm are built using libraries with different
7181 terminal databases. In that situation, xterm may choose a
7182 terminal description not known to the shell.
7183
7184 WINDOWID
7185 is set to the X window id number of the xterm window.
7186
7187 XTERM_FILTER
7188 is set if a locale-filter is used. The value is the pathname of
7189 the filter.
7190
7191 XTERM_LOCALE
7192 shows the locale which was used by xterm on startup. Some shell
7193 initialization scripts may set a different locale.
7194
7195 XTERM_SHELL
7196 is set to the pathname of the program which is invoked. Usually
7197 that is a shell program, e.g., /bin/sh. Since it is not
7198 necessarily a shell program however, it is distinct from “SHELL”.
7199
7200 XTERM_VERSION
7201 is set to the string displayed by the -version option. That is
7202 normally an identifier for the X Window libraries used to build
7203 xterm, followed by xterm's patch number in parenthesis. The patch
7204 number is also part of the response to a Secondary Device
7205 Attributes (DA) control sequence (see Xterm Control Sequences).
7206
7207 System Dependent
7208 Depending on your system configuration, xterm may also set the
7209 following:
7210
7211 COLUMNS
7212 the width of the xterm in characters (cf: “stty columns”).
7213
7214 When this variable is set, curses applications (and most terminal
7215 programs) will assume that the terminal has this many columns.
7216
7217 Xterm would do this for systems which have no ability to tell the
7218 size of the terminal. Those are very rare, none newer than the
7219 mid 1990s when SVR4 became prevalent.
7220
7221 HOME
7222 when xterm is configured (at build-time) to update utmp.
7223
7224 LINES
7225 the height of the xterm in characters (cf: “stty rows”).
7226
7227 When this variable is set, curses applications (and most terminal
7228 programs) will assume that the terminal has this many lines
7229 (rows).
7230
7231 Xterm would do this for systems which have no ability to tell the
7232 size of the terminal. Those are very rare, none newer than the
7233 mid 1990s when SVR4 became prevalent.
7234
7235 LOGNAME
7236 when xterm is configured (at build-time) to update utmp.
7237
7238 Your configuration may have set LOGNAME; xterm does not modify
7239 that. If it is unset, xterm will use USER if it is set. Finally,
7240 if neither is set, xterm will use the getlogin(3) function.
7241
7242 SHELL
7243 when xterm is configured (at build-time) to update utmp. It is
7244 also set if you provide a valid shell name as the optional
7245 parameter.
7246
7247 Xterm sets this to an absolute pathname. If you have set the
7248 variable to a relative pathname, xterm may set it to a different
7249 shell pathname.
7250
7251 If you have set this to an pathname which does not correspond to a
7252 valid shell, xterm may unset it, to avoid confusion.
7253
7254 TERMCAP
7255 the contents of the termcap entry corresponding to $TERM, with
7256 lines and columns values substituted for the actual size window
7257 you have created.
7258
7259 This feature is, like LINES and COLUMNS, used rarely. It
7260 addresses the same limitation of a few older systems by providing
7261 a way for termcap-based applications to get the initial screen
7262 size.
7263
7264 TERMINFO
7265 may be defined to a nonstandard location using the configure
7266 script.
7267
7269 In the output from xprop(1), there are several properties.
7270
7271 Properties set by X Toolkit
7272 WM_CLASS
7273 This shows the instance name and the X resource class, passed to X
7274 Toolkit during initialization of xterm, e.g.,
7275
7276 WM_CLASS(STRING) = "xterm", "UXTerm"
7277
7278 WM_CLIENT_LEADER
7279 This shows the window-id which xterm provides with an environment
7280 variable (WINDOWID), e.g.,
7281
7282 WM_CLIENT_LEADER(WINDOW): window id # 0x800023
7283
7284 WM_COMMAND
7285 This shows the command-line arguments for xterm which are passed
7286 to X Toolkit during initialization, e.g.,
7287
7288 WM_COMMAND(STRING) = { "xterm", "-class", "UXTerm", "-title", "uxterm", "-u8" }
7289
7290 WM_ICON_NAME
7291 This holds the icon title, which different window managers handle
7292 in various ways. It is set via the iconName resource.
7293 Applications can change this using control sequences.
7294
7295 WM_LOCALE_NAME
7296 This shows the result from the setlocale(3) function for the
7297 LC_CTYPE category, e.g.,
7298
7299 WM_LOCALE_NAME(STRING) = "en_US.UTF-8"
7300
7301 WM_NAME
7302 This holds the window title, normally at the top of xterm's
7303 window. It is set via the title resource. Applications can
7304 change this using control sequences.
7305
7306 Properties set by Xterm
7307 X Toolkit does not manage EWMH properties. Xterm does this directly.
7308
7309 _NET_WM_ICON_NAME
7310 stores the icon name.
7311
7312 _NET_WM_NAME
7313 stores the title string.
7314
7315 _NET_WM_PID
7316 stores the process identifier for xterm's display.
7317
7318 Properties used by Xterm
7319 _NET_SUPPORTED
7320 Xterm checks this property on the supporting window to decide if
7321 the window manager supports specific maximizing styles. That may
7322 include other window manager hints; xterm uses the X library calls
7323 to manage those.
7324
7325 _NET_SUPPORTING_WM_CHECK
7326 Xterm checks this to ensure that it will only update the EWMH
7327 properties for a window manager which claims EWMH compliance.
7328
7329 _NET_WM_STATE
7330 This tells xterm whether its window has been maximized by the
7331 window manager, and if so, what type of maximizing:
7332
7333 _NET_WM_STATE_FULLSCREEN
7334
7335 _NET_WM_STATE_MAXIMIZED_HORZ
7336
7337 _NET_WM_STATE_MAXIMIZED_VERT
7338
7340 The actual pathnames given may differ on your system.
7341
7342 /etc/shells
7343 contains a list of valid shell programs, used by xterm to decide
7344 if the “SHELL” environment variable should be set for the process
7345 started by xterm.
7346
7347 On systems which have the getusershell function, xterm will use
7348 that function rather than directly reading the file, since the
7349 file may not be present if the system uses default settings.
7350
7351 /etc/utmp
7352 the system log file, which records user logins.
7353
7354 /etc/wtmp
7355 the system log file, which records user logins and logouts.
7356
7357 /usr/share/X11/app-defaults/XTerm
7358 the xterm default application resources.
7359
7360 /usr/share/X11/app-defaults/XTerm-color
7361 the xterm color application resources. If your display supports
7362 color, use this
7363
7364 *customization: -color
7365
7366 in your .Xdefaults file to automatically use this resource file
7367 rather than /usr/share/X11/app-defaults/XTerm. If you do not do
7368 this, xterm uses its compiled-in default resource settings for
7369 colors.
7370
7371 /usr/share/pixmaps
7372 the directory in which xterm's pixmap icon files are installed.
7373
7375 Most of the fatal error messages from xterm use the following format:
7376
7377 xterm: Error XXX, errno YYY: ZZZ
7378
7379 The XXX codes (which are used by xterm as its exit-code) are listed
7380 below, with a brief explanation.
7381
7382 1 is used for miscellaneous errors, usually accompanied by a
7383 specific message,
7384
7385 11 ERROR_FIONBIO
7386 main: ioctl() failed on FIONBIO
7387
7388 12 ERROR_F_GETFL
7389 main: ioctl() failed on F_GETFL
7390
7391 13 ERROR_F_SETFL
7392 main: ioctl() failed on F_SETFL
7393
7394 14 ERROR_OPDEVTTY
7395 spawn: open() failed on /dev/tty
7396
7397 15 ERROR_TIOCGETP
7398 spawn: ioctl() failed on TIOCGETP
7399
7400 17 ERROR_PTSNAME
7401 spawn: ptsname() failed
7402
7403 18 ERROR_OPPTSNAME
7404 spawn: open() failed on ptsname
7405
7406 19 ERROR_PTEM
7407 spawn: ioctl() failed on I_PUSH/"ptem"
7408
7409 20 ERROR_CONSEM
7410 spawn: ioctl() failed on I_PUSH/"consem"
7411
7412 21 ERROR_LDTERM
7413 spawn: ioctl() failed on I_PUSH/"ldterm"
7414
7415 22 ERROR_TTCOMPAT
7416 spawn: ioctl() failed on I_PUSH/"ttcompat"
7417
7418 23 ERROR_TIOCSETP
7419 spawn: ioctl() failed on TIOCSETP
7420
7421 24 ERROR_TIOCSETC
7422 spawn: ioctl() failed on TIOCSETC
7423
7424 25 ERROR_TIOCSETD
7425 spawn: ioctl() failed on TIOCSETD
7426
7427 26 ERROR_TIOCSLTC
7428 spawn: ioctl() failed on TIOCSLTC
7429
7430 27 ERROR_TIOCLSET
7431 spawn: ioctl() failed on TIOCLSET
7432
7433 28 ERROR_INIGROUPS
7434 spawn: initgroups() failed
7435
7436 29 ERROR_FORK
7437 spawn: fork() failed
7438
7439 30 ERROR_EXEC
7440 spawn: exec() failed
7441
7442 32 ERROR_PTYS
7443 get_pty: not enough ptys
7444
7445 34 ERROR_PTY_EXEC
7446 waiting for initial map
7447
7448 35 ERROR_SETUID
7449 spawn: setuid() failed
7450
7451 36 ERROR_INIT
7452 spawn: can't initialize window
7453
7454 46 ERROR_TIOCKSET
7455 spawn: ioctl() failed on TIOCKSET
7456
7457 47 ERROR_TIOCKSETC
7458 spawn: ioctl() failed on TIOCKSETC
7459
7460 49 ERROR_LUMALLOC
7461 luit: command-line malloc failed
7462
7463 50 ERROR_SELECT
7464 in_put: select() failed
7465
7466 54 ERROR_VINIT
7467 VTInit: can't initialize window
7468
7469 57 ERROR_KMMALLOC1
7470 HandleKeymapChange: malloc failed
7471
7472 60 ERROR_TSELECT
7473 Tinput: select() failed
7474
7475 64 ERROR_TINIT
7476 TekInit: can't initialize window
7477
7478 71 ERROR_BMALLOC2
7479 SaltTextAway: malloc() failed
7480
7481 80 ERROR_LOGEXEC
7482 StartLog: exec() failed
7483
7484 83 ERROR_XERROR
7485 xerror: XError event
7486
7487 84 ERROR_XIOERROR
7488 xioerror: X I/O error
7489
7490 85 ERROR_ICEERROR
7491 ICE I/O error
7492
7493 90 ERROR_SCALLOC
7494 Alloc: calloc() failed on base
7495
7496 91 ERROR_SCALLOC2
7497 Alloc: calloc() failed on rows
7498
7499 102 ERROR_SAVE_PTR
7500 ScrnPointers: malloc/realloc() failed
7501
7503 Large pastes do not work on some systems. This is not a bug in xterm;
7504 it is a bug in the pseudo terminal driver of those systems. Xterm
7505 feeds large pastes to the pty only as fast as the pty will accept data,
7506 but some pty drivers do not return enough information to know if the
7507 write has succeeded.
7508
7509 When connected to an input method, it is possible for xterm to hang if
7510 the XIM server is suspended or killed.
7511
7512 Many of the options are not resettable after xterm starts.
7513
7514 This program still needs to be rewritten. It should be split into very
7515 modular sections, with the various emulators being completely separate
7516 widgets that do not know about each other. Ideally, you'd like to be
7517 able to pick and choose emulator widgets and stick them into a single
7518 control widget.
7519
7520 There needs to be a dialog box to allow entry of the Tek COPY file
7521 name.
7522
7524 resize(1), luit(1), uxterm(1), X(7), Xcursor(7), pty(4), tty(4)
7525
7526 Xterm Control Sequences (this is the file ctlseqs.ms).
7527
7528 https://invisible-island.net/xterm/xterm.html
7529 https://invisible-island.net/xterm/manpage/xterm.html
7530 https://invisible-island.net/xterm/ctlseqs/ctlseqs.html
7531 https://invisible-island.net/xterm/xterm.faq.html
7532 https://invisible-island.net/xterm/xterm.log.html
7533
7534 X Toolkit Intrinsics – C Language Interface (Xt),
7535 Joel McCormack, Paul Asente, Ralph R. Swick (1994),
7536 Thomas E. Dickey (2019).
7537
7538 Inter-Client Communication Conventions Manual (ICCCM),
7539 David Rosenthal and Stuart W. Marks (version 2.0, 1994).
7540
7541 Extended Window Manager Hints (EWMH),
7542 X Desktop Group (version 1.3, 2005).
7543
7544 EWMH uses UTF8_STRING pervasively without defining it, but does mention
7545 the ICCCM. Version 2.0 of the ICCCM does not address UTF-8. That is
7546 an extension added in XFree86.
7547
7548 • Markus Kuhn summarized this in UTF-8 and Unicode FAQ for Unix/Linux
7549 (2001), in the section “Is X11 ready for Unicode?”
7550
7551 https://www.cl.cam.ac.uk/~mgk25/unicode.html
7552
7553 • Juliusz Chroboczek proposed the UTF8_STRING selection atom in
7554 1999/2000, which became part of the ICCCM in XFree86.
7555
7556 https://www.irif.fr/~jch/software/UTF8_STRING/
7557
7558 An Xorg developer removed that part of the documentation in 2004
7559 when incorporating other work from XFree86 into Xorg. The feature
7560 is still supported in Xorg, though undocumented as of 2019.
7561
7563 Far too many people.
7564
7565 These contributed to the X Consortium: Loretta Guarino Reid (DEC-UEG-
7566 WSL), Joel McCormack (DEC-UEG-WSL), Terry Weissman (DEC-UEG-WSL),
7567 Edward Moy (Berkeley), Ralph R. Swick (MIT-Athena), Mark Vandevoorde
7568 (MIT-Athena), Bob McNamara (DEC-MAD), Jim Gettys (MIT-Athena), Bob
7569 Scheifler (MIT X Consortium), Doug Mink (SAO), Steve Pitschke
7570 (Stellar), Ron Newman (MIT-Athena), Jim Fulton (MIT X Consortium), Dave
7571 Serisky (HP), Jonathan Kamens (MIT-Athena).
7572
7573 Beginning with XFree86, there were far more identifiable contributors.
7574 The THANKS file in xterm's source lists 243 in June 2022. Keep in mind
7575 these: Jason Bacon, Jens Schweikhardt, Ross Combs, Stephen P. Wall,
7576 David Wexelblat, and Thomas Dickey (invisible-island.net).
7577
7578
7579
7580Patch #375 2022-10-23 XTERM(1)