Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

pty(4)

resize(1x11)

tty(4)

X(1x11)



XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



NAME
     xterm - terminal emulator for X

SYNOPSIS
     xterm [-toolkitoption ...] [-option ...]

     This is a supported client.

DESCRIPTION
     The xterm program is a terminal emulator for the X Window
     System.  It provides DEC VT102 and Tektronix 4014 compatible
     terminals for programs that can't use the window system
     directly.

     If the underlying operating system supports terminal
     resizing capabilities (for example, the SIGWINCH signal in
     systems derived from Berkeley's 4.3bsd), xterm will use the
     facilities to notify programs running in the window whenever
     it is resized.

     The VT102 and Tektronix 4014 terminals each have their own
     window so that you can edit text in one window and look at
     graphics in the other window at the same time.

     To maintain the correct aspect ratio (height/width),
     Tektronix graphics will be restricted to the largest box
     with a Tektronix 4014's aspect ratio that will fit in the
     window.  This box is located in the upper left area of the
     window.

     Although both windows may be displayed at the same time, one
     of them is considered the ``active'' window for receiving
     keyboard input and terminal output.  This is the window that
     contains the text cursor.  The cursor is highlighted (solid
     block) whenever the pointer is in either window.

     The active window can be chosen through escape sequences,
     the ``Modes'' menu in the VT102 window, and the
     ``Tektronix'' menu in the 4014 window.

OPTIONS
     The xterm terminal emulator accepts all standard X Toolkit
     command line options along with the additional options
     listed here (if the option begins with a `+' instead of a
     `-', the option is restored to its default value; this is
     useful to override resources):

     -help   This causes xterm to print out a verbose message
             describing its options.

     -132    Normally, the VT102 DECCOLM escape sequence that
             switches between 80 and 132 column mode is ignored.



Printed 3/22/89                                                 1





XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



             This option causes the DECCOLM escape sequence to be
             recognized, and the xterm window will resize
             appropriately.

     -ado    This option causes xterm to request the window
             manager to deiconify its VT102 window when there is
             output to the window.

     +ado    This option indicates that xterm should not auto-
             de-iconify.

     -ah     This option indicates that xterm should always
             highlight the text cursor (make it solid).  By
             default, xterm will display a hollow text cursor
             whenever the focus is lost or the pointer leaves the
             window.

     +ah     This option indicates that xterm should do text
             cursor highlighting.

     -aro    This option causes xterm to request the window
             manager to raise its VT102 window when there is
             output to the window and the window is not iconified
             and not fully visible.

     +aro    This option indicates that xterm should not auto-
             raise.

     -b number
             This option specifies the size of the inner border
             (the distance between the outer edge of the
             characters and the window border) in pixels.  The
             default is 2.

     -cc characterclassrange:value[,...]
             This sets classes indicated by the given ranges for
             use in selecting by words.  See the section
             specifying character classes.

     -cr color
             This option specifies the color to use for text
             cursor.  The default is to use the same foreground
             color that is used for text.

     -cu     This option indicates that xterm should work around
             a bug in the curses(3t) cursor motion package that
             causes the more(1) program to display lines that are
             exactly the width of the window and are followed by
             a line beginning with a tab.  (The leading tabs are
             not displayed.)

     +cu     This option indicates that xterm should not work



Printed 3/22/89                                                 2





XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



             around the curses(3t) problem just mentioned.
             (Display as is.)

     -e program [arguments ...]
             This option specifies the program (and its command
             line arguments) to be run in the xterm window.  It
             also sets the window title and icon name to be the
             basename of the program being executed if neither -T
             nor -n are given on the command line.  Note that
             this must be the last option on the command line.
             See also the -exit option below.

     -exitcommand
             This option specifies a textual command that will
             cause the program running in the xterm window",
t
o e
w
h
x
ic
t
hsa
w
f
o
e
r
k
l
s
y
.foT
r
he
m
od
s
e
t
fa
s
h
u
e
l
l
t
li
s
,
s
e
t
.
h
e
g
.ss
t
h
r
,
i
nc
g
s"
h
,
e
xi
o
r
t
ksh. This string will be sent to the standard input of the program when xterm receives either a WM_DELETE_WINDOW or a WM_SAVE_YOURSELF message, asking xterm to shut down safely. If the command is a null string (-exit ""), xterm will not ask for either of these client messages, and will instead have its server connection closed without warning. +exit This option indicates that".
x
term
should use the default exit string, "exit -fb font This option specifies a font to be used when displaying bold text. This font must be the same height and width as the normal font. If only one of the normal or bold fonts is specified, it will be used as the normal font and the bold font will be produced by overstriking this font. The default bold font is ``vtbold.'' -j This option indicates that xterm should do jump scrolling. Normally, text is scrolled one line at a time; this option allows xterm to move multiple lines at a time so that it doesn't fall as far behind. Its use is strongly recommended since it makes xterm much faster when scanning through large amounts of text. The VT100 escape sequences for enabling and disabling smooth scroll as well as the ``Modes'' menu can be used to turn this feature on or off. +j This option indicates that xterm should not do jump scrolling. -l This option indicates that xterm should send all Printed 3/22/89 3
XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



             terminal output to a log file as well as to the
             screen.  This option can be enabled or disabled
             using the ``xterm X11'' menu.

     +l      This option indicates that xterm should not do
             logging.

     -lf filename
             This option specifies the name of the file to which
             the output log (described earlier) is written.  If
             file begins with a pipe symbol (|), the rest of the
             string is assumed to be a command to be used as the
             endpoint of a pipe.  The default filename is
             ``XtermLog.XXXXX'' (where XXXXX is the process id of
             xterm) and is created in the directory from which
             xterm was started (or the user's home directory in
             the case of a login window).

     -ls     This option indicates the shell that is started in
             the xterm window is a login shell (i.e. the first
             character of argv[0] will be a dash, indicating to
             the shell that it should read the user's .login or
             .profile).

     +ls     This option indicates the shell that is started
             should not be a login shell (i.e. it will be a
             normal ``subshell'').

     -mb     This option indicates that xterm should ring a
             margin bell when the user types near the right side
             of a line.  This option can be turned on and off
             from the ``Modes'' menu.

     +mb     This option indicates that margin bell should not be
             rung.

     -ms color
             This option specifies the color to be used for the
             pointer cursor.  The default is to use the
             foreground color.

     -nb number
             This option specifies when the margin bell will
             ring, using the distance specified: the number of
             characters in from the right-hand margin.  The
             default is 10.

     -rw     This option indicates that reverse-wraparound should
             be allowed.  This allows the cursor to back up from
             the leftmost column of one line to the rightmost
             column of the previous line.  This is very useful
             for editing long shell command lines and is



Printed 3/22/89                                                 4





XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



             encouraged.  This option can be turned on and off
             from the ``Modes'' menu.

     +rw     This option indicates that reverse-wraparound should
             not be allowed.

     -s      This option indicates that xterm may scroll
             asynchronously, meaning that the screen does not
             have to be kept completely up to date while
             scrolling.  This allows xterm to run faster when
             network latencies are very high.  It is typically
             useful when running across a very large internet or
             many gateways.

     +s      This option indicates that xterm should scroll
             synchronously.

     -sb     This option indicates that some number of lines that
             are scrolled off the top of the window should be
             saved and that a scrollbar should be displayed so
             that those lines can be viewed.  This option may be
             turned on and off from the ``Modes'' menu.

     +sb     This option indicates that a scrollbar should not be
             displayed.

     -sf     This option indicates that Sun Function Key escape
             codes should be generated for function keys.

     +sf     This option indicates that the standard escape codes
             should be generated for function keys.

     -si     This option indicates that output to a window should
             not automatically reposition the screen to the
             bottom of the scrolling region. This option can be
             turned on and off from the ``Modes'' menu.

     +si     This option indicates that output to a window should
             cause it to scroll to the bottom.

     -sk     This option indicates that pressing a key while
             using the scrollbar to review previous lines of text
             should cause the window to be repositioned
             automatically in the normal position at the bottom
             of the scroll region.

     +sk     This option indicates that pressing a key while
             using the scrollbar should not cause the window to
             be repositioned.

     -sl number
             This option specifies the number of lines to save



Printed 3/22/89                                                 5





XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



             that have been scrolled off the top of the screen.
             The default is 64.

     -t      This option indicates that xterm should start in
             Tektronix mode, rather than in VT102 mode.
             Switching between the two windows is done using the
             ``Modes'' menus.

     +t      This option indicates that xterm should start in
             VT102 mode.

     -tm string
             This option specifies a series of terminal setting
             keywords followed by the characters that should be
             bound to those functions, similar to the stty
             program.  This is ignored when -L is given since
             getty resets the terminal.  Allowable keywords
             include: intr, quit, erase, kill, eof, eol, swtch,
             start, stop, brk, susp, dsusp, rprnt, flush, weras,
             and lnext.  Control characters may be specified as
             ^char (e.g. ^c or ^u) and ^? may be used to indicate
             delete.

     -tn name
             This option specifies the name of the terminal type
             to be set in the TERM environment variable.  This
             terminal type must exist in the termcap(5) data base
             and should have li# and co# entries.

     -ut     This option indicates that xterm shouldn't write a
             record into the the system log file /etc/utmp.

     +ut     This option indicates that xterm should write a
             record into the system log file /etc/utmp.

     -vb     This option indicates that a visual bell is
             preferred over an audible one.  Instead of ringing
             the terminal bell whenever a Control-G is received,
             the window will flash.

     +vb     This option indicates that a visual bell should not
             be used.

     -C      This option indicates that the window should receive
             console output.  This is not supported on all
             systems.

     -Sccn   This option specifies the last two letters of the
             name of a pseudoterminal to use in slave mode.  This
             allows xterm to be used as an input and output
             channel for an existing program and is sometimes
             used in specialized applications.



Printed 3/22/89                                                 6





XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     The following command line arguments are provided for
     compatibility with older versions.  They may not be
     supported in the next release as the X Toolkit provides
     standard options that accomplish the same task.

     %geom   This option specifies the preferred size and
             position of the Tektronix window.  It is shorthand
             for specifying the "*tekGeometry" resource.

     #geom   This option specifies the preferred position of the
             icon window.  It is shorthand for specifying the
             "*iconGeometry" resource.

     -T string
             This option specifies the title for xterm windows.
             It is equivalent to -title.

     -n string
             This option specifies the icon name for xterm
             windows.  It is shorthand for specifying the
             "*iconName" resource.  Note that this is not the
             same as the toolkit option -name (see below).  The
             default icon name is the application name.

     -r      This option indicates that reverse video should be
             simulated by swapping the foreground and background
             colors.  It is equivalent to -reversevideo or -rv.

     -w number
             This option specifies the width in pixels of the
             border surrounding the window.  It is equivalent to
             -borderwidth or -bw.

     -L      This option indicates that xterm was started by
             init.  In this mode, xterm does not try to allocate
             a new pseudoterminal as init has already done so.
             In addition, the system program getty is run instead
             of the user's shell.

     This option has been superceded by the new xdm(1x11)
     program; furthermore, this option should never be used by
     users when starting terminal windows.

     The following standard X Toolkit command line arguments are
     commonly used with xterm:

     -bg color
             This option specifies the color to use for the
             background of the window. The default is ``white.''

     -bd color
             This option specifies the color to use for the



Printed 3/22/89                                                 7





XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



             border of the window.  The default is ``black.''

     -bw number
             This option specifies the width in pixels of the
             border surrounding the window.

     -display display
             This option specifies the X server to contact; see
             X(1x11).

     -fg color
             This option specifies the color to use for
             displaying text.  The default is ``black''.

     -fn font
             This option specifies the font to be used for
             displaying normal text.  The default is
             ``vtsingle.''

     -geometry geometry
             This option specifies the preferred size and
             position of the VT102 window; see X(1x11).

     -iconic This option indicates that xterm should ask the
             window manager to start it as an icon rather than as
             the normal window.

     -name name
             This option specifies the application name under
             which resources are to be obtained, rather than the
             default executable file name.  Name should not
             contain ``.'' or ``*'' characters.

     -title string
             This option specifies the window title string, which
             may be displayed by window managers if the user so
             chooses.  The default title is the command line
             specified after the -e option, if any, otherwise the
             application name.

     -rv     This option indicates that reverse video should be
             simulated by swapping the foreground and background
             colors.

     -xrm resourcestring
             This option specifies a resource string to be used.
             This is especially useful for setting resources that
             do not have separate command line options.

X DEFAULTS
     The program understands all core X Toolkit resource names
     and classes as well as those listed here:



Printed 3/22/89                                                 8





XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     iconGeometry (class IconGeometry)
             Specifies the preferred size and position of the
             application when iconified.  It is not necessarily
             obeyed by all window managers.

     sunFunctionKeys (class SunFunctionKeys)
             Specifies whether or not Sun Function Key escape
             codes should be generated for function keys instead
             of standard escape sequences.

     termName (class TermName)
             Specifies the terminal type name to be set in the
             TERM environment variable.

     title (class Title)
             Specifies a string that may be used by the window
             manager when displaying this application.

     ttyModes (class TtyModes)
             Specifies a string containing terminal setting
             keywords and the characters to which they may be
             bound.  This option is ignored when -L is given
             since getty resets the terminal.  Allowable keywords
             include: intr, quit, erase, kill, eof, eol, swtch,
             start, stop, brk, susp, dsusp, rprnt, flush, weras,
             and lnext.  Control characters may be specified as
             ^char (e.g. ^c or ^u) and ^? may be used to indicate
             delete.

     This is very useful for overriding the default terminal
     settings without having to do an stty every time an xterm is
     started.

     utmpInhibit (class UtmpInhibit)
             Specifies whether xterm should try to record the
             user's terminal in /etc/utmp.


     The following resources are specified as part of the
     ``vt100'' widget (class ``VT100''):

     allowSendEvents (class AllowSendEvents)
             Specifies whether or not synthetic key and button
             events (generated using the X protocol SendEvent
             request) should be interpreted or discarded.  The
             default is ``false'' meaning they are discarded.
             Note that allowing such events creates a large
             security hole.


     alwaysHighlight (class AlwaysHighlight)
             Specifies whether or not xterm should always display



Printed 3/22/89                                                 9





XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



             a highlighted text cursor.  By default, a hollow
             text cursor is displayed whenever the pointer moves
             out of the window or the window loses the input
             focus.

     autoDeIconifyOnOutput (class Auto)
             Specifies whether to deiconify the VT102 window when
             the window gets output.  The default is ``false''.

     autoRaiseOnOutput (class Auto)
             Specifies whether to raise the VT102 window when the
             window gets output and the window is not iconified
             and not fully visible.  The default is ``false''.

     background (class Background)
             Specifies the color to use for the background of the
             window.  The default is ``white.''

     boldFont (class Font)
             Specifies the name of the bold font.  The default is
             ``vtbold.''

     c132 (class C132)
             Specifies whether or not the VT102 DECCOLM escape
             sequence should be honored.  The default is
             ``false.''

     charClass (class CharClass)
             Specifies comma-separated lists of character class
             bindings of the form [low-]high:value.  These are
             used in determining which sets of characters should
             be treated the same when doing cut and paste.  See
             the section on specifying character classes.

     curses (class Curses)
             Specifies whether or not the last column bug in
             curses(3x) should be worked around.  The default is
             ``false.''

     cursorColor (class Foreground)
             Specifies the color to use for the text cursor.  The
             default is ``black.''

     exitCommand (class ExitCommand)
             Specifies a textual command that will cause the
             program running in the xterm wi"
n
.
d
oS
w
ee
t
ote
h
e
x
i-
t
es
x
a
i
f
t
ely. T
o
h
p
e
t
id
o
e
n
fa
f
o
u
l
r
tmi
o
r
s
etd
h
eta
s
i
t
l
r
i
s
.
n
g "exit font (class Font) Specifies the name of the normal font. The default is ``vtsingle.'' Printed 3/22/89 10
XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     foreground (class Foreground)
             Specifies the color to use for displaying text in
             the window.  Setting the class name instead of the
             instance name is an easy way to have everything that
             would normally appear in the "text" color change
             color.  The default is ``black.''

     geometry (class Geometry)
             Specifies the preferred size and position of the
             VT102 window.

     internalBorder (class BorderWidth)
             Specifies the number of pixels between the
             characters and the window border.  The default is 2.

     jumpScroll (class JumpScroll)
             Specifies whether or not jump scroll should be used.
             The default is ``false''.

     logFile (class Logfile)
             Specifies the name of the file to which a terminal
             session is logged.  The default is
             ``XtermLog.XXXXX'' (where XXXXX is the process id of
             xterm).

     logging (class Logging)
             Specifies whether or not a terminal session should
             be logged.  The default is ``false.''

     logInhibit (class LogInhibit)
             Specifies whether or not terminal session logging
             should be inhibited.  The default is ``false.''

     loginShell (class LoginShell)
             Specifies whether or not the shell to be run in the
             window should be started as a login shell.  The
             default is ``false.''

     marginBell (class MarginBell)
             Specifies whether or not the bell should be run when
             the user types near the right margin.  The default
             is ``false.''

     multiScroll (class MultiScroll)
             Specifies whether or not asynchronous scrolling is
             allowed.  The default is ``false.''

     nMarginBell (class Column)
             Specifies the number of characters from the right
             margin at which the margin bell should be run, when
             enabled.




Printed 3/22/89                                                11






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     pointerColor (class Foreground)
             Specifies the color of the pointer.  The default is
             ``black.''

     pointerShape (class Cursor)
             Specifies the name of the shape of the pointer.  The
             default is ``xterm.''

     reverseVideo (class ReverseVideo)
             Specifies whether or not reverse video should be
             simulated.  The default is ``false.''

     reverseWrap (class ReverseWrap)
             Specifies whether or not reverse-wraparound should
             be enabled.  The default is ``false.''

     saveLines (class SaveLines)
             Specifies the number of lines to save beyond the top
             of the screen when a scrollbar is turned on.  The
             default is 64.

     scrollBar (class ScrollBar)
             Specifies whether or not the scrollbar should be
             displayed.  The default is ``false.''

     scrollInput (class ScrollCond)
             Specifies whether or not output to the terminal
             should automatically cause the scrollbar to go to
             the bottom of the scrolling region.  The default is
             ``true.''

     scrollKey (class ScrollCond)
             Specifies whether pressing a key should
             automatically cause the scrollbar to go to the
             bottom of the scrolling region.  The default is
             ``false.''

     signalInhibit (class SignalInhibit)
             Specifies whether the entries in the ``xterm X11''
             menu for sending signals to xterm should be
             disallowed.  The default is ``false.''

     tekGeometry (class Geometry)
             Specifies the preferred size and position of the
             Tektronix window.

     tekInhibit (class TekInhibit)
             Specifies whether Tektronix mode should be
             disallowed.  The default is ``false.''

     tekStartup (class TekStartup)
             Specifies whether xterm should start up in Tektronix



Printed 3/22/89                                                12






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



             mode.  The default is ``false.''

     titeInhibit (class TiteInhibit)
             Specifies whether xterm should remove remove ti or
             te termcap entries (used to switch between alternate
             screens on startup of many screen-oriented programs)
             from the TERMCAP string.

     translations (class Translations)
             Specifies the key and button bindings for menus,
             selections, ``programmed strings'', etc.  See
             KEY/BUTTON BINDINGS below.

     visualBell (class VisualBell)
             Specifies whether a visible bell (i.e. flashing)
             should be used instead of an audible bell when
             Control-G is received.  The default is ``false.''


     The following resources are specified as part of the
     ``tek4014'' widget (class ``Tek4014''):

     height (class Height)
             Specifies the height of the Tektronix window in
             pixels.

     width (class Width)
             Specifies the width of the Tektronix window in
             pixels.


     The following resources are specified as part of the
     ``menu'' widget:

     menuBorder (class MenuBorder)
             Specifies the size in pixels of the border
             surrounding menus.  The default is 2.

     menuFont (class Font)
             Specifies the name of the font to use for displaying
             menu items.

     menuPad (class MenuPad)
             Specifies the number of pixels between menu items
             and the menu border.  The default is 3.


     The following resources are useful when specified for the
     Athena "scrollbar" widget:

     background (class Background)
             Specifies the color to use for the background of the



Printed 3/22/89                                                13






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



             scrollbar.

     foreground (class Foreground)
             Specifies the color to use for the foreground of the
             scrollbar.  The ``thumb'' of the scrollbar is a
             simple checkerboard pattern alternating pixels for
             foreground and background color.

     thickness (class Thickness)
             Specifies the width in pixels of the scrollbar.

EMULATIONS
     The VT102 emulation is fairly complete, but does not support
     the blinking character attribute nor the double-wide and
     double-size character sets.  Termcap(5) entries that work
     with xterm include ``xterm'', ``vt102'', ``vt100'' and
     ``ansi'', and xterm automatically searches the termcap file
     in this order for these entries and then sets the ``TERM''
     and the ``TERMCAP'' environment variables.

     Many of the special xterm features (like logging) may be
     modified under program control through a set of escape
     sequences different from the standard VT102 escape
     sequences. (See the Xterm Control Sequences document.)

     The Tektronix 4014 emulation supports four different font
     sizes and five different line types.  The Tektronix text and
     graphics commands are recorded internally by xterm and may
     be written to a file by sending the COPY escape sequence (or
     through the Tektronix menu; see below).  The name of the
     file will be ``COPYyy-MM-dd.hh:mm:ss'', where yy, MM, dd,
     hh, mm and ss are the year, month, day, hour, minute and
     second when the COPY was performed (the file is created in
     the directory xterm is started in, or the home directory for
     a login xterm).

POINTER USAGE
     Once the VT102 window is created, xterm allows you to select
     text and copy it within the same or other windows.

     The selection functions are invoked when the pointer buttons
     are used with no modifiers, and when they are used with the
     ``shift'' key.  The assignment of the functions described
     below to keys and buttons may be changed through the
     resource database; see KEY/BUTTON BINDINGS below.

     Pointer button one (usually left) is used to save text into
     the cut buffer.  Move the cursor to beginning of the text,
     and then hold the button down while moving the cursor to the
     end of the region and releasing the button.  The selected
     text is highlighted and is saved in the global cut buffer
     and made the PRIMARY selection when the button is released.



Printed 3/22/89                                                14






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     Double-clicking selects by words.  Triple-clicking selects
     by lines.  Quadruple-clicking goes back to characters, etc.
     Multiple-click is determined by the time from button up to
     button down, so you can change the selection unit in the
     middle of a selection.  If the key/button bindings specify
     that an X selection is to be made, xterm will leave the
     selected text highlighted for as long as it is the selection
     owner.

     Pointer button two (usually middle) `types' (pastes) the
     text from the PRIMARY selection, if any, otherwise from the
     cut buffer, inserting it as keyboard input.

     Pointer button three (usually right) extends the current
     selection.  (Without loss of generality, that is you can
     swap ``right'' and ``left'' everywhere in the rest of this
     paragraph...)  If pressed while closer to the right edge of
     the selection than the left, it extends/contracts the right
     edge of the selection.  If you contract the selection past
     the left edge of the selection, xterm assumes you really
     meant the left edge, restores the original selection, then
     extends/contracts the left edge of the selection.  Extension
     starts in the selection unit mode that the last selection or
     extension was performed in; you can multiple-click to cycle
     through them.

     By cutting and pasting pieces of text without trailing new
     lines, you can take text from several places in different
     windows and form a command to the shell, for example, or
     take output from a program and insert it into your favorite
     editor.  Since the cut buffer is globally shared among
     different applications, you should regard it as a `file'
     whose contents you know.  The terminal emulator and other
     text programs should be treating it as if it were a text
     file, i.e. the text is delimited by new lines.

     The scroll region displays the position and amount of text
     currently showing in the window (highlighted) relative to
     the amount of text actually saved.  As more text is saved
     (up to the maximum), the size of the highlighted area
     decreases.

     Clicking button one with the pointer in the scroll region
     moves the adjacent line to the top of the display window.

     Clicking button three moves the top line of the display
     window down to the pointer position.

     Clicking button two moves the display to a position in the
     saved text that corresponds to the pointer's position in the
     scrollbar.




Printed 3/22/89                                                15






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     Unlike the VT102 window, the Tektronix window does not allow
     the copying of text.  It does allow Tektronix GIN (Graphics
     Input) mode, and in this mode the cursor will change from an
     arrow to a cross.  Pressing any key will send that key and
     the current coordinate of the cross cursor.  Pressing button
     one, two, or three will return the letters `l', `m', and
     `r', respectively.  If the `shift' key is pressed when a
     pointer button is pressed, the corresponding uppercase
     letter is sent.

     To distinguish a pointer button from a key, the high bit of
     the character is set (but this is bit is normally stripped
     unless the terminal mode is RAW; see tty(4) for details).

MENUS
     The xterm terminal emulator has three different menus, named
     xterm, Modes, and Tektronix.

     Each menu pops up under the correct combinations of key and
     button presses.  Most menus are divided into two section,
     separated by a horizontal line.  The top portion contains
     various modes that can be altered.  A check mark appears
     next to a mode that is currently active.  Selecting one of
     these modes toggles its state.

     The bottom portion of the menu are command entries;
     selecting one of these performs the indicated function.

     The xterm menu pops up when the ``control'' key and pointer
     button one are pressed in a window.  The modes section
     contains items that apply to both the VT102 and Tektronix
     windows.  The Secure Keyboard mode should be used when
     typing in passwords or other sensitive data; see SECURITY.
     Notable entries in the command section of the menu are
     Continue, Suspend, Interrupt, Hangup, Terminate and Kill
     which send the SIGCONT, SIGTSTP, SIGINT, SIGHUP, SIGTERM and
     SIGKILL signals, respectively, to the process group of the
     process running under xterm (usually the shell).  The
     Continue function is especially useful if the user has
     accidentally typed CTRL-Z, suspending a process.

     The Modes menu sets various modes in the VT102 emulation,
     and is popped up when the ``control'' key and pointer button
     two are pressed in the VT102 window.  In the command section
     of this menu, the soft reset entry will reset scroll
     regions.  This can be convenient when some program has left
     the scroll regions set incorrectly (often a problem when
     using VMS or TOPS-20).  The full reset entry will clear the
     screen, reset tabs to every eight columns, and reset the
     terminal modes (such as wrap and smooth scroll) to their
     initial states just after xterm has finished processing the
     command line options.



Printed 3/22/89                                                16






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     The Tektronix menu sets various modes in the Tektronix
     emulation, and is popped up when the ``control'' key and
     pointer button two are pressed in the Tektronix window.  The
     current font size is checked in the modes section of the
     menu.

     The PAGE entry in the command section clears the Tektronix
     window.

SECURITY
     X environments differ in their security consciousness.  The
     servers provided by MIT use a host-based mechanism to
     control access to the server (see xhost(1x11)).  If you
     enable access for a host, and other users are also permitted
     to run clients on that host, there is the possibility that
     someone will run an application that will attempt to use the
     basic services of the X protocol to snoop on your
     activities, and potentially capture a transcript of
     everything you type at the keyboard.  This is of particular
     concern when you want to type in a password or other
     sensitive data.

     The best solution to this problem is for the industry to
     choose a standard authorization mechanism, with the
     necessary operating system support, and to incorporate this
     into the X protocol (which is already designed to handle
     such a mechanism).  In the mean time, since passwords are
     most commonly typed to something running in an xterm window,
     a simple mechanism exists for protecting keyboard input in
     xterm.

     The xterm menu (see MENUS ) contains a Secure Keyboard entry
     which, when enabled, ensures that all keyboard input is
     directed only to xterm (using the GrabKeyboard protocol
     request).  When an application prompts you for a password
     (or other sensitive data), you can enable Secure Keyboard
     using the menu, type in the data, and then disable Secure
     Keyboard using the menu again.

     Only one X client at a time can secure the keyboard, so when
     you attempt to enable Secure Keyboard it may fail.  In this
     case, the bell will sound.  If the Secure Keyboard succeeds,
     the foreground and background colors will be exchanged (as
     if you selected the Reverse Video entry in the Modes menu);
     they will be exchanged again when you exit secure mode.  If
     the colors do not switch, then you should be very suspicious
     that you are being spoofed.  If the application you are
     running displays a prompt before asking for the password, it
     is safest to enter secure mode before the prompt gets
     displayed, and to make sure that the prompt gets displayed
     correctly (in the new colors), to minimize the probability
     of spoofing.  You can also bring up the menu again and make



Printed 3/22/89                                                17






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     sure that a check mark appears next to the entry.

     Secure Keyboard mode will be disabled automatically if your
     xterm window becomes iconified (or otherwise unmapped), or
     if you start up a reparenting window manager (that places a
     title bar or other decoration around the window) while in
     Secure Keyboard mode.  (This is a feature of the X protocol
     not easily overcome.)  When this happens, the foreground and
     background colors will be switched back and the bell will
     sound in warning.

CHARACTER CLASSES
     Clicking the middle mouse button twice in rapid succession
     will cause all characters of the same class (e.g. letters,
     white space, punctuation) to be selected.  Since different
     people have different preferences for what should be
     selected (for example, should filenames be selected as a
     whole or only the separate subnames), the default mapping
     can be overridden through the use of the charClass (class
     CharClass) resource.

     This resource is simply a list of range:value pairs where
     the range is either a single number or low-high in the range
     of 0 to 127, corresponding to the ASCII code for the
     character or characters to be set.  The value is arbitrary,
     although the default table uses the character number of the
     first character occurring in the set.

     The default table is:

          static int charClass[128] = {
          /* NUL  SOH  STX  ETX  EOT  ENQ  ACK  BEL */
              32,   1,   1,   1,   1,   1,   1,   1,
          /*  BS   HT   NL   VT   NP   CR   SO   SI */
               1,  32,   1,   1,   1,   1,   1,   1,
          /* DLE  DC1  DC2  DC3  DC4  NAK  SYN  ETB */
               1,   1,   1,   1,   1,   1,   1,   1,
          /* CAN   EM  SUB  ESC   FS   GS   RS   US */
               1,   1,   1,   1,   1,   1,   1,   1,
          /*  SP    !    "    #    $    %    &    ' */
              32,  33,  34,  35,  36,  37,  38,  39,
          /*   (    )    *    +    ,    -    .    / */
              40,  41,  42,  43,  44,  45,  46,  47,
          /*   0    1    2    3    4    5    6    7 */
              48,  48,  48,  48,  48,  48,  48,  48,
          /*   8    9    :    ;    <    =    >    ? */
              48,  48,  58,  59,  60,  61,  62,  63,
          /*   @    A    B    C    D    E    F    G */
              64,  48,  48,  48,  48,  48,  48,  48,
          /*   H    I    J    K    L    M    N    O */
              48,  48,  48,  48,  48,  48,  48,  48,
          /*   P    Q    R    S    T    U    V    W */



Printed 3/22/89                                                18






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



              48,  48,  48,  48,  48,  48,  48,  48,
          /*   X    Y    Z    [    \    ]    ^    _ */
              48,  48,  48,  91,  92,  93,  94,  48,
          /*   `    a    b    c    d    e    f    g */
              96,  48,  48,  48,  48,  48,  48,  48,
          /*   h    i    j    k    l    m    n    o */
              48,  48,  48,  48,  48,  48,  48,  48,
          /*   p    q    r    s    t    u    v    w */
              48,  48,  48,  48,  48,  48,  48,  48,
          /*   x    y    z    {    |    }    ~  DEL */
              48,  48,  48, 123, 124, 125, 126,   1};
     For example, the string ``33:48,37:48,45-47:48,64:48''
     indicates that the exclamation mark, percent sign, dash,
     period, slash, and ampersand characters should be treated
     the same way as characters and numbers.  This is very useful
     for cutting and pasting electronic mailing addresses and
     UNIX* operating system filenames.

KEY TRANSLATIONS
     It is possible to rebind keys (or sequences of keys) to
     arbitrary strings for input, by changing the translations
     for the vt100 or tek4014 widgets.  Changing the translations
     for events other than key and button events is not expected,
     and will cause unpredictable behavior.

     The actions available for key translations are:

     secure()       Toggles the Secure Keyboard mode; see
                    SECURITY.

     insert()       Processes the key in the normal way; i.e.
                    inserts the ASCII character code
                    corresponding to the keysym found in the
                    keyboard mapping table into the input stream.

     string(string) Rebinds the key or key sequence to the string
                    value; that is, inserts the string argument
                    into the input stream.  Quotation is
                    necessary if the string contains whitespace
                    or non-alphanumeric characters.  If the
                    string argument begins with the characters
                    ``0x'', it is interpreted as a hex character
                    constant and the corresponding character is
                    sent in the normal way.

     keymap(name)   The keymap action takes a single string
                    argument naming a resource to be used to
                    dynamically define a new translation table;
                    the name of the resource is obtained by
                    appending the string ``Keymap'' to name.
                    The keymap name None restores the original
                    translation table (the very first one; a



Printed 3/22/89                                                19






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



                    stack is not maintained).  Upper/lower case
                    is significant.

     insert-selection(name[,name]...)
                    Retrieves the value of the first (left-most)
                    named selection that exists or cut buffer
                    that is non-empty and inserts the value into
                    the input stream. Name is the name of any
                    selection, for example, PRIMARY or SECONDARY,
                    or the name of a cut buffer: CUT_BUFFER0,
                    ..., CUT_BUFFER7.  Upper/lower case is
                    significant.

     For example, a debugging session might benefit from the
     following bindings:

         *VT100.Translations: #override <Key>F13: keymap(dbx)
         *VT100.dbxKeymap.translations: \
              <Key>F14: keymap(None) \n\
              <Key>F17: string("next") string(0x0d) \n\
              <Key>F18: string("step") string(0x0d) \n\
              <Key>F19: string("continue") string(0x0d) \n\
              <Key>F20: string("print ") insert-selection(PRIMARY, CUT_BUFFER0)

KEY/BUTTON BINDINGS
     Within the VT100 widget the key and button bindings for
     selecting text, pasting text, and activating the menus are
     controlled by the translation bindings.  In addition to the
     actions listed above under KEY TRANSLATIONS, the following
     actions are available:

     mode-menu()    Posts one of the two mode menus, depending on
                    which button is pressed.

     select-start() Unselects any previously selected text and
                    begins selecting new text.

     select-extend()
                    Continues selecting text from the previous
                    starting position.

     start-extend() Begins extending the selection from the
                    farthest (left or right) edge.

     select-end(name[,name]...)
                    Ends the text selection.  Name is the name of
                    a selection, or the name of a cut buffer into
                    which the text is to be copied.  Xterm will
                    assert ownership of all the selections named
                    and will copy the text into each of the cut
                    buffers.  Upper/lower case is significant.




Printed 3/22/89                                                20






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     ignore()       Quietly discards the key or button event.

     bell([volume]) Rings the bell at the specified volume
                    increment above/below the base volume.

     The default bindings are:

                   <KeyPress>:insert() \n\
          Ctrl     ~Meta     <Btn1Down>:mode-menu() \n\
              ~Meta          <Btn1Down>:select-start() \n\
              ~Meta          <Btn1Motion>:select-extend() \n\
          Ctrl     ~Meta     <Btn2Down>:mode-menu() \n\
         ~Ctrl     ~Meta     <Btn2Down>:ignore() \n\
              ~Meta          <Btn2Up>:insert-selection(PRIMARY, CUT_BUFFER0) \n\
         ~Ctrl     ~Meta     <Btn3Down>:start-extend() \n\
              ~Meta          <Btn3Motion>:select-extend() \n\
              ~Meta          <BtnUp>:select-end(PRIMARY, CUT_BUFFER0) \n\
                   <BtnDown>:bell(0)

STARTING XTERM FROM INIT
     Warning, this feature is now obsolete and may not be
     supported in future releases.  Sites using this method
     should switch to xdm(1x11) instead.

     Tektronix provides the xsystem(8x11) program as the
     preferred method of starting X11.

     On operating systems such as 4.3bsd and Ultrix, the server
     and initial login window are normally started automatically
     by init(8).

     By convention, the pseudoterminal with the highest minor
     device number (e.g. /dev/ttyqf and /dev/ptyqf) is renamed
     for the lowest display number (e.g. /dev/ttyv0 and
     /dev/ptyv0).  Machines that have more than one display can
     repeat this process using ttyqe for ttyv1, and so on.

     Once the pseudoterminals are in place, a line similar to the
     following may be added to /etc/ttys (replacing Xqvss with
     the appropriate server and putting it all on one line):

         ttyv0 "/usr/bin/X11/xterm -L -geom 80x24+1+1 -display :0"
              xterm on secure window="/usr/bin/X11/Xqvss :0"

     Sites that used to run X10 should note that the colon in the
     server display number is required.

     Although the release will install both the X server and
     xterm in /usr/bin/X11 by default, many sites choose to make
     a copy of both of these programs on the root partition
     (usually in /etc) so that they may still be used even if the
     partition containing /usr/bin/X11 isn't mounted.



Printed 3/22/89                                                21






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     Some versions of init have relatively small program name
     buffer sizes and treat all sharp signs as comment
     delimiters.  Sites that wish to list large numbers of
     options on the xterm line will need to write a small shell
     script to exec the long xterm line.  The best solution, of
     course, is to use xdm.

OTHER FEATURES
     The xterm emulator automatically highlights the text cursor
     when the window is selected and unhighlights it when the
     window is unselected.

     "Selection" means that keyboard typing goes to the window.
     How selection occurs is a function of the window manager;
     most window managers either make the focus go wherever the
     pointer is or allow users to select a focus window with a
     mouse button.

     In VT102 mode, there are escape sequences to activate and
     deactivate an alternate screen buffer, which is the same
     size as the display area of the window.  When activated, the
     current screen is saved and replace with the alternate
     screen.  Saving of lines scrolled off the top of the window
     is disabled until the normal screen is restored.  The
     termcap(5) entry for xterm allows the visual editor vi(1) to
     switch to the alternate screen for editing, and restore the
     screen on exit.

     In either VT102 or Tektronix mode, there are escape
     sequences to change the name of the windows and to specify a
     new log file name.

ENVIRONMENT
     The xterm emulator sets the environment variables ``TERM''
     and ``TERMCAP'' properly for the size window you have
     created.  It also uses and sets the environment variable
     ``DISPLAY'' to specify which bit map display terminal to
     use.  The environment variable ``WINDOWID'' is set to the X
     window id number of the xterm window.

SEE ALSO
     pty(4), resize(1x11), tty(4), X(1x11), and the document
     Xterm Control Sequences.

CAVEATS
     The -L option is no longer needed as the new xdm display
     manager system handles logging it in a much cleaner way.
     This option may be removed in future releases.

     The xterm emulator will hang if you try to paste too much
     text at one time.  It is both producer and consumer for the
     pty and can deadlock.



Printed 3/22/89                                                22






XTERM(1X11)             COMMAND REFERENCE             XTERM(1X11)



     Variable-width fonts are not handled reasonably.

     The focus is considered lost if some other client (e.g., the
     window manager) grabs the pointer.

     Many of the options are not resettable after xterm starts.

     The Tek widget does not support key/button re-binding.

AUTHORS
     Loretta Guarino Reid (DEC-UEG-WSL), Joel McCormack (DEC-
     UEG-WSL), Terry Weissman (DEC-UEG-WSL), Edward Moy
     (Berkeley), Ralph R. Swick (MIT-Athena), Mark Vandevoorde
     (MIT-Athena), Bob McNamara (DEC-MAD), Jim Gettys (MIT-
     Athena), Bob Scheifler (MIT X Consortium), Doug Mink (SAO),
     Steve Pitschke (Stellar), Ron Newman (MIT-Athena), Jim
     Fulton (MIT X Consortium), Dave Serisky (HP).

*UNIX is a registered trademark of AT&T.




































Printed 3/22/89                                                23



%%index%%
na:336,83;
sy:419,246;
de:665,1620;
op:2285,802;3495,3067;6970,3291;10669,2972;14049,2709;17166,2814;20388,4417;25213,2728;28349,4250;33007,4050;37465,4441;42314,4707;47429,3669;51506,3917;55831,2619;58858,3933;63199,4071;67678,3098;71184,3447;75039,3890;79337,4020;83765,2347;
ca:86371,1396;88175,908;
se:86112,259;
%%index%%000000000350

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026