|
|
1.1 root 1: VERSION X10/6.6B
2: ------- --------
3:
4: General
5: -------
6:
7: vt102 and Tektronix 4015 emulation in separate windows, each with its own
8: mode menu (control middle button).
9:
10: Switching between each mode can be done via the menus, or with escape
11: sequences:
12: vt102 -- \E[?38h --> tek
13: tek -- \E\003 --> vt102
14:
15: The windows hilite themselves when the mouse is with either window or when
16: one of these is the focus window. The windows unhilite when the mouse moves
17: out of the window and neither is the focus window. Hiliting appears as
18: windows with solid color borders and solid block cursors. Unhiliting appears
19: as windows with "grayed" borders and a rectangle cursor.
20:
21: The parser for both modes is table-driven and is much more efficient than the
22: original parsers.
23:
24: If UTMP is define in the Makefile, then each instance of xterm makes an entry
25: in /etc/utmp and thus appears with the "who" command.
26:
27: If both windows are visible and one is iconified, both disappear. Deiconifing
28: causes both to appear again.
29:
30: If the initial mode is vt102, /etc/termcap is searched, in order, for the
31: following termcaps, until one is found:
32: xterms, xterm, vt102, vt100, ansi, dumb
33: If the vt102 window happens to be 80x24, then xterms is added to the begining
34: of the list. If the initial mode is tek, the termcaps searched for are:
35: tek4015, tek4014, tek4013, tek4010, dumb
36:
37: The window size is passed to the operating system via TIOCSWINSZ (4.3) or
38: TIOCSSIZE (sun). A SIGWINCH siganl is sent if the vt102 window is resized.
39:
40: For login windows, menus are disabled until a user has successfully login.
41:
42: A new menu (xterm) has been added (control left button) that gives the version
43: number. The menu allows titlebars to be displayed (see below), the windows
44: redrawn, or for various signals to be sent to the process group of the command
45: xterm is executing. The signals include SIGCONT, SIGTSTP,SIGHUP, SIGINT,
46: SIGTERM and SIGKILL.
47:
48: Titlebars for the window can be turned on with .Xdefaults
49: "xterm.TitleBar on", with command line option -tb or via the xterm menu.
50:
51: The titlebar font is, by default, vtsingle. The font can be changed with
52: .Xdefaults "xterm.TitleFont helv12b" for helv12b font or via command line
53: option -ft helv12b.
54:
55: The titlebar look like Macintosh titlebars. A series of strips appears when the
56: window is hilited, and are gone when unhilited.
57:
58: Both windows are visible and the mouse cursor is in either window, only the
59: active window is hilited (before both windows were hilited).
60:
61: A time delay has been added for window hiliting/unhiliting so that the mouse
62: passing momentarily through a window will not cause it to hilite and then
63: unhilite when autoraise is on.
64:
65: Automatic raising of windows has been added, so that the window is automatically
66: raised (after the time delay) when the mouse enters a window. The mode is
67: turned on via .Xdefaults "xterm.AutoRaise on", via command line option -ar
68: or via the xterm menu. This is a dubious feature.
69:
70: Visual bell mode can be turned on via .Xdefaults "xterm.VisualBell on", via
71: command line option -vb and from the xterm menu.
72:
73: If the NOWINDOWMENU is not defined, then
74: Control right button activates a windows menu that lists the visible (named)
75: windows in back to front order reading down. Selecting a window name cause
76: that window to be raised to the top (useful for getting to a buried
77: window). This feature does not belong in xterm, and will be
78: completely removed in V11 of X, where window managers can be more intellegent.
79:
80: The tek window has the same name as the vt102 window, but with " (Tek)"
81: appended (before they were the same).
82:
83: During startup, xterm tries to create unique window names so that the
84: windows menu will not contain ambiguous windows. It does this by look
85: through the list of windows and if a name exist that is the same, " #N"
86: will be appended to make it unique (N is a number two or greater).
87:
88: Some reorganization of the code and data has been done to put more data in
89: the text segment so many xterm processes can share the (read-only) data, rather
90: than having n copies in core.
91:
92: There are several bug fixes including better sun compatibility and a problem
93: in the vt102 parse table.
94:
95: With some mods to libX.a, xterm solves a problem of running xterm on a remote
96: host with a local window, when the remote host uses a different keymap (like
97: running on a remote microvax on a sun). If the environment variable KEYBD
98: is set or the command line option "-kb name" is given, then a keymap file
99: with the given name is used, rather than the default of your .Xkeymap file.
100: Standard names for keymap files is yet to be made. (This option is turned on
101: via defining KEYBD in the Makefile.)
102:
103: Xterm now always creates its own icon(s), which includes the window's name.
104: The -i option now means startup showing the icon. The option #[+-]x[+-]y
105: means to position the icon there instead of centered within the window.
106: The bitmap within the icon show the current active mode (either vt102 or
107: tek). The icon reverse-videos with the windows.
108:
109: By default, the icons are a miniture window and the window title. The icon
110: can also be miniture versions of the window. This is activated with .Xdefaults
111: "xterm.ActiveIcon on", -ai from the command line, or from the xterm menu.
112:
113: The active icon does not normally allow input. A menu selection in the xterm
114: menu will allow input to the icon.
115:
116: When the mouse is in the stripped area of the titlebar, you can get any
117: of the three menus without pressing the control key. Clicking in the
118: actual title iconifies. Clicking in an icon deiconifies it.
119:
120: Many mode option on the command line allow a '+' instead of '-' to indicate
121: turning off the indicated mode.
122:
123: Color support has been improved, so that an unselected cursor is an empty
124: rectangle with the foreground color, and the selected cursor is a filled
125: rectangle with the cursor color.
126:
127: A better and faster menu package has been added that supports (Mac-like)
128: checkmarks and dimmed (disabled and grayed) item, as well as line separator
129: items.
130:
131: To conserve on resources, the unhilited border of the window(s) is now
132: always a gray pixmap, which is shared by the menu package.
133:
134: Logging capability has been added, in which all characters sent to the
135: xterm window are recorded. The mode is turned on by using .Xdefaults option
136: "xterm.Logging on", -l on the command line, from the xterm menu or the
137: escape sequence \E[?46h in vt102 mode. Logging is turned off through the
138: xterm menu or \E[?46l in vt102 mode. The default log file is XtermLog.XXXXX
139: (XXXXX is the process id of xterm) and is in the initial directory in which
140: xterm was started (the home directory for login xterms). Each logging start
141: appends to the end of the loggin file, and each logging stop closes the file.
142:
143: An alternate logging file may be given with .Xdefaults "xterm.LogFile file"
144: (file is the alternate filename) or with command line option "-lf file".
145: If the first character of the logfile name is `|', then the rest of the
146: name passed to the shell for execution and a pipe is created to the process.
147: In this case, each time the log is started, a new process is created and
148: when logging is turned off, the pipe is closed. Thus, a logfile name of
149: "| lpr", will send text to the line printer each time logging is turned off.
150:
151: Certain modes may be inhibited by specifying in the .Xdefaults file. A
152: change to the initial logging mode may be prevented with "xterm.LogInhibit on",
153: which will prevent changes to logging from the menu or from escape sequences.
154: "xterm.SignalInhibit on" disables the xterm menu signal sending (Continue is
155: still allowed). "xterm.TekInhibit on" prevents entering into Tektronix mode.
156:
157: As per edjames@eros, xterm sets the environment variable WINDOWID, which
158: contains the Window id of the initial window (normally vt102, but could be
159: the tek window if the -t option were specified). This "feature" is
160: bogus, as it may not always give you all information you need to
161: access a window.
162:
163: The title in the title bar may be changed with the \E]0;new title\007 escape
164: sequence. Any non-printing character terminates the title string. The
165: windows and icons are also renamed, and the icons are resized to fit the
166: new title.
167:
168: The log file may be changed with the \E]46;new log file\007 escape sequence.
169: If the log file name is empty, the default log file name is used.
170:
171: In visual bell mode, the icons now flash on receipt of a control-G.
172:
173: If xterm is iconified and new input comes in, a box is drawn around the
174: icon title.
175:
176: The bitmap used for the icons is now user definable. The VT102 bitmap may be
177: set with .Xdefaults "xterm.IconBitmap file" or with "-ib file" on the command
178: line. The Tek bitmap may be set with .Xdefaults "xterm.TekIconBitmap file"
179: or with "-it file" on the command line. These files are assumed to be
180: bitmap(1) format files. If only one bitmap file is specified, it is used for
181: both modes. If both are specified as null file names, then no bitmap is drawn.
182:
183: Normally, the title text of the icon is displayed to the right of the
184: bitmap. The text may be displayed under the bitmap by using .Xdefaults
185: "xterm.TextUnderIcon on" or with -ti on the command line.
186:
187: The mouse may be automatically warpped to the xterm window when it is
188: deiconified by using .Xdefaults "xterm.DeiconifyWarp on" or using -dw on
189: the command line. This is also of questionable merit.
190:
191: The standard error output used by xterm is now improved. Normally it will
192: be the same standard error when xterm is started. For login xterms
193: (-L specified) then the standard error will be to /dev/console.
194:
195: X error events are now intercepted so that xterm may cleanup before exiting
196: (like resetting the tty modes and clearing the /etc/utmp entry).
197:
198: VT102
199: -----
200:
201: vt102 emulation is much more complete than the original xterm.
202:
203: Underlined characters is now supported.
204:
205: A partial sun tty emulation is provided (x, y, w, h, c, r are numbers):
206: \E[3;x;yt move window to (x, y)
207: \E[4;w;ht resize window - width w, height h pixels
208: \E[5t raise window
209: \E[6t lower window
210: \E[7t redisplay window
211: \E[8;r;ct resize window - r rows, c columns
212: \E[13t send window position \E[3;x;yt
213: \E[14t send window size (pixel) \E[4;w;ht
214: \E[18t send window size (rows and columns) \E[8;r;ct
215:
216: The text for reexcuting (shift-left button), copy (shift-middle button-drag)
217: and paste (shift-right button) is now hilited by reverse video.
218:
219: Pasting text that was originally displayed as vt102 graphic characters now
220: returns the original ascii character (and not the internal representation).
221:
222: Text that is scrolled off the top of the window can be saved and is accessable
223: via a scrollbar. By default, saving is off and can be turned changed via
224: escape sequence \E[?43h (on) and \E[43l (off) or from the mode menu. The
225: scrollbar is normally off, but may be made visible with .Xdefault option
226: "xterm.ScrollBar on" or command line option -sb. The scrollbar state can
227: be changed via the mode menu or escape sequences \E[?42h (on) and \E[?42l
228: (off).
229:
230: The scrollbar is composed of three parts (from top down), the scroll button,
231: the save button and the scroll region. The scroll button changes what is
232: displayed in the window. Left button pressed in the scroll button causes
233: the window to move one line up (the text scrolls one line down). The right
234: button moves one line down. Shift left button moves one screenful up and shift
235: right button moves one screenful down. Control left button moves to the top
236: of the buffer, control right button moves to the bottom. The visible area
237: is shown graphically in the scroll region, with the (usually) dark region
238: that part of the buffer that appears in the window. Clicking the left or
239: right button in the scroll region cause the visible region to be position
240: with its top at the mouse position. The save button shows the state of saving
241: or not saving lines. By default, any input or output will return the
242: screen to the bottom.
243:
244: The default maximum number of lines saved off the top is 64, but can be
245: specified in .Xdefaults as "xterm.SaveLines 100" for 100 lines, or as
246: a command line option "-sl 100".
247:
248: The lines saved can be cleared via the mode menu.
249:
250: A margin bell can be turned on via .Xdefaults "xterm.MarginBell on", command
251: line option -mb or mode menu. The default number of columns from the right
252: margin is 10 and is settable via .Xdefaults "xterm.NMarginBell 15" for 15
253: columns, or via command line option -nb 15. The mode may be changed by escape
254: sequence \E[?44h (on) and \E[?44l (off).
255:
256: To emulate the vt102 switching between 80 and 132 columns, the mode may
257: be turned on via .Xdefaults "xterm.C132 on", via command line option -132 or
258: via the mode menu. The mode may be changed by escape sequence \E[?40h (on)
259: and \E[?40l (off).
260:
261: A mode that fixes a bug in curses (e.g. when using "more" on lines that have
262: lines that print on the last column of the line and the next line begins with
263: a tab) can be turned on .Xdefaults "xterm.Curses on", command line option
264: -cu or via the mode menu. The mode may be changed by escape sequence
265: \E[?41h (on) and \E[?41l (off).
266:
267: Auto linefeed mode and auto repeat are supported.
268:
269: The mode menu is now more descriptive.
270:
271: Most Dec Private mode settings can be save away internally using \E[?ns,
272: where n is the same number to set or reset the Dec Private mode. The
273: mode can be restored using \E[?nr. This can be used in termcap for vi, for
274: example, to turn off saving of lines, but restore whatever the original
275: state was on exit.
276:
277: An optional status line (in reverse video) has been added to the bottom of
278: the vt102 window. The following escape sequences work on the status line:
279: \E[?S show status line
280: \E[?H hide status line
281: \E[?nT enter status line, at column n
282: \E[?F return to the position before entry into status line
283: \E[?E erase status line
284: Also, the status line may be turned on via .Xdefaults "xterm.StatusLine on",
285: the -st commandline option or from the mode menu.
286:
287: Reverse wraparound can be enabled with .Xdefaults "xterm.ReverseWrap on", via
288: command line option -rw or from the mode menu. Also the escape sequences
289: \E[?45h turns on reverse wraparound and \E[?45l turns it off. Reverse
290: wraparound only works when autowrap is also on and is useful, for instance,
291: when entering a long line that wraps to the shell and needing to erase
292: backwards to correct it.
293:
294: The scrollbar code has been modified to use fewer pixmaps, and should work
295: better on the GPX.
296:
297: An alternate screen buffer is now supported. Entry into the alternate screen
298: buffer with \E[?47h will automatically inhibit lines from being saved off the
299: top of the window and \E[?47l returns to the normal screen buffer and restores
300: the original state of line saving. The new termcap entry causes vi to use
301: the alternate screen buffer on entry and clears the alternate buffer before
302: returning to the regular buffer.
303:
304: If the normal font is specified and the bold font isn't, then the bold font
305: is automatically created be overstring, ala dcmartin@ingres.
306:
307: The scrollbar now has its own menu, available when the middle button is pressed
308: anywhere in the scrollbar. The menu entries originally in the mode menu having
309: to do with the scrollbar have been moved to the scrollbar menu (except the
310: Scrollbar entry, to initially display the scrollbar).
311:
312: The scroll bar may be repositioned automatically at the bottom when input comes
313: in by using .Xdefaults "xterm.ScrollInput on", using -si on the command line
314: or via the scrollbar menu.
315:
316: The scroll bar may be repositioned automatically at the bottom when a key is
317: pressed by using .Xdefaults "xterm.ScrollKey on", using -sk on the command line
318: or via the scrollbar menu.
319:
320: Normally the status line is displayed in reverse video. A normal-video status
321: line may be obtained by using .Xdefaults "xterm.StatusNormal on", with
322: -sn on the command line or via the mode menu, or may be controlled with the
323: escape sequences \E[?48h (on) and \E[?48l (off). In normal video mode, a
324: box is still drawn around the status line.
325:
326: Page scroll mode may be activated by using .Xdefaults "xterm.PageScroll on",
327: using -ps on the command line or via the mode menu, or may be control by the
328: escape sequences \E[?49h (on) and \E[?49l (off). In page scroll mode,
329: after a page of input has been displayed, further scrolling is disabled
330: and the text cursor is hidden. Typing a carriage return allows another
331: line to be scrolled (the return is discarded). Pressing the space bar (or any
332: other printable character) causes another page to be scrolled (the character
333: is discarded). Typing a control character scrolls another page, but the
334: control character is sent (e.g., your interrupt character).
335:
336: A page in page scroll mode is defined to be the number of lines in the current
337: scrolling region, minus the page overlap number. The page overlap is one by
338: default, but may be set by .Xdefaults "xterm.PageOverlap 3" or via the
339: "-po 3" command line option.
340:
341: Page scroll mode is automatically inhibited when using the alternate screen.
342:
343: The icon windows are now named, with " (icon)" appended. Thus, iconified
344: xterms now show up in the windows menu.
345:
346: Tektronix
347: ---------
348:
349: Tek mode is much more complete than the original.
350:
351: Tek standard two column mode is supported.
352:
353: Four different character sizes are supported and can be changed via the
354: tek menu.
355:
356: 5 line types are supported (solid, dotted, short dashed, long dashed and
357: dot dashed).
358:
359: All of the tek character sequences are stored and can be saved into a file
360: via the standard COPY escape sequence or from the mode menu. The file created
361: is named COPYyy-mm-dd.hh:mm:ss (COPY plus the date and time) and is placed
362: in the initial directory in which xterm was started. Login xterms use the
363: users home directory.
364:
365: When the tek window is being refreshed, the mouse cursor shows a clock.
366:
367: The X geometry of the Tek window can be given on the command line (independently
368: of the VT102 window) by using %geometry (`%' rather than `=').
369:
370: In GIN mode, pressing a key will send the key and the mouse coordinates of
371: the cross cursor, similar to standard Tek GIN mode. Pressing a mouse button
372: instead will send the character `l', `m' or `r' depending on whether the
373: left, middle or right button was pressed, respectively. If the shift key was
374: down when the button was pressed, the corresponding upper case character is
375: sent. To distinquish a button press from a key press, the high bit of the
376: character is set, but this is only useful if the tty mode is set to RAW to
377: pass all 8 bits.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.