~ubuntu-branches/ubuntu/precise/xterm/precise-updates

« back to all changes in this revision

Viewing changes to debian/local/xterm.faq.html

  • Committer: Bazaar Package Importer
  • Author(s): Lorenzo De Liso
  • Date: 2011-02-12 15:58:09 UTC
  • mfrom: (1.4.11 upstream) (11.1.24 sid)
  • Revision ID: james.westby@ubuntu.com-20110212155809-cpkfynhfxzgbje2l
Tags: 268-1ubuntu1
* Merge from debian unstable (LP: #717301), remaining changes:
  - debian/patches/950_ubuntu_charclass_highlight.diff: Enabled URL
    highlighting
  - debian/patches/Add 951_uxterm_utf8_title.diff: Set utf8Titles to true by
    default when using uxterm, so that it displays utf8 directories in titles
    properly.  May cause issues with apps that use control sequences for
    updating the xterm titlebar - users should use xterm or set utf8Title
    to false in this case.
  - debian/gbp.conf: Use "Ubuntu" in "debian-branch" directly

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF   *
21
21
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.            *
22
22
 *****************************************************************************
23
 
  $XTermId: xterm.faq.html,v 1.138 2010/05/15 20:46:49 tom Exp $
 
23
  $XTermId: xterm.faq.html,v 1.167 2010/11/25 14:10:03 tom Exp $
24
24
  -->
25
25
<HTML>
26
26
<HEAD>
27
 
<TITLE>XTERM &ndash; Frequently Asked Questions (FAQ)</TITLE>
 
27
<TITLE>XTERM - Frequently Asked Questions (FAQ)</TITLE>
28
28
<LINK REV=MADE HREF="mailto:dickey@invisible-island.net">
29
29
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
30
30
</HEAD>
32
32
<HR>
33
33
Copyright 1997-2009,2010 by Thomas E. Dickey
34
34
<HR>
 
35
<a href="http://invisible-island.net/xterm/xterm.faq.html">Here</a>
 
36
is the latest version of this file.
35
37
<h2>Contents</h2>
36
38
<UL>
37
39
<LI><A HREF="#what_is_it">What is XTERM?</A>
38
40
<LI><A HREF="#who_did_it">Who wrote XTERM?</A>
 
41
<LI><A HREF="#what_is_vt220">What is a VT220?</A>
39
42
<LI><A HREF="#what_platforms">What platforms does it run on?</A>
40
43
<LI><A HREF="#latest_version">What is the latest version?</A>
41
44
<LI><A HREF="#other_versions">What versions are available?</A>
 
45
<LI><A HREF="#compare_versions">Comparing versions, by counting controls</A>
42
46
<LI><A HREF="#how_do_i">How do I ...</A>
43
47
<LI><A HREF="#frequent_problems">Frequent problems</A>
44
48
<LI><A HREF="#known_bugs">Known Bugs in XTERM</A>
59
63
derived from 4.3bsd), xterm will use the facilities to notify programs running
60
64
in the window whenever it is resized.
61
65
</blockquote>
 
66
That is, it is a <em>specific</em> program, not a generic item.
 
67
This FAQ presents various useful bits of information for both
 
68
the specific program as well as other programs that imitate it.
62
69
 
63
70
<h2><A NAME="who_did_it">Who wrote XTERM?</A></h2>
64
71
I've been working on xterm since early 1996
148
155
</blockquote>
149
156
<P>
150
157
This FAQ is oriented toward the version of xterm originally distributed
151
 
with XFree86 (also known as "new xterm",
 
158
with XFree86 (more commonly known as modern, or "new xterm",
152
159
with a corresponding terminal description "xterm-new"),
153
160
which was based on the X11R6.3 xterm, with the addition of ANSI color and
154
161
VT220 controls.
155
162
 
 
163
<h2><A NAME="what_is_vt220">What is a VT220?</A></h2>
 
164
<h3>Why a VT220?</h3>
 
165
The manual page mentions a VT220.
 
166
Most terminal emulators documentation talk about VT100.
 
167
But a VT100 is a rather limited subset of what people expect:
 
168
<ul>
 
169
<li>VT100s have no function keys.
 
170
Arguably, PF1-PF4 are function keys.
 
171
My keyboard has 12 function keys.
 
172
<li>VT100s do not do
 
173
<a href="../ncurses/ncurses.faq.html">color</a>.
 
174
</ul>
 
175
<p>
 
176
Initially, I was only interested in making colors workable for curses
 
177
programs.
 
178
<p>
 
179
Later, I noticed that xterm had some support for what would now be termed as ISO-2022.
 
180
That was a VT220 feature, rather than VT100.
 
181
There were some missing pieces.
 
182
So I decided to fill in those pieces and make xterm a VT220 emulator.
 
183
(VT220s do not do ANSI color either&mdash;the missing pieces were in other areas).
 
184
<p>
 
185
Xterm also provides features that are in neither VT100 nor VT220,
 
186
which are used by other programs as "xterm emulation".
 
187
<ul>
 
188
<li>set (and retrieve) window- and icon-labels using escape sequences.
 
189
<li>interpret mouse clicks as escape sequences that can be read by a program.
 
190
</ul>
 
191
By the way, the control string used for setting the titles was
 
192
not in a standard format:
 
193
<ul>
 
194
<li>In X10 (1988), the string was simply terminated by any nonprinting character.
 
195
<li>X11R4 (1989) modified that to ensure that the nonprinting character is an
 
196
ASCII BEL (control/G).
 
197
<li>There is no explanation in the (sketchy) notes distributed with the
 
198
X11R4 xterm;
 
199
in retrospect it seems that the most likely explanation for the choice is
 
200
that it was simpler to implement in shell scripts than <code>ESC&nbsp;\</code>.
 
201
</ul>
 
202
<p>
 
203
I revised that area <a href="xterm.log.html#xterm_24">starting in 1996</a>,
 
204
<ul>
 
205
<li>first to use xterm's state table for handling the input, and then
 
206
<li>to accept the standard string terminator as well.
 
207
</ul>
 
208
<h3>What is a State Table?</h3>
 
209
That was mentioned regarding the title strings.
 
210
Xterm uses a state machine to handle incoming characters.
 
211
That is essentially what a real terminal does.
 
212
Other "xterm" terminal emulators typically do not do this,
 
213
which makes them not do well with <A HREF="../vttest/vttest.html">vttest</A>.
 
214
 
156
215
<h2><A NAME="what_platforms">What platforms does it run on?</A></h2>
157
216
<code>Xterm</code> runs in all of the implementations of X11.
158
217
I've built and run these since I started working on xterm:
226
285
(I am aware of a few others, such as
227
286
<STRONG>xcterm</STRONG>, but have not seen
228
287
a working version of these).
229
 
<p>
230
 
There were for some time two versions of XFree86 xterm.  Starting with my
231
 
<a href="xterm.log.html#xterm_88">patch 88</a>,
232
 
there were the stable (beta) and unstable (alpha) versions, which currently
233
 
are XFree86 3.3.6 and XFree86 4.x, respectively.
234
 
I made only critical changes to the stable version since
235
 
patch 88;
236
 
ongoing development (including all non-critical fixes)
237
 
was focused on the "unstable".
238
 
<p>
239
 
XFree86 4.0 should have incorporated my
240
 
<a href="xterm.log.html#xterm_131">patch 131</a>,
241
 
but it was overlooked at the last moment
242
 
(though it was listed in the ChangeLog, the patch itself was not applied).
243
 
Unfortunately, the patch 130 version which was released
244
 
renders colors incorrectly on most platforms, in particular FreeBSD.
245
 
Ironically, the change in
246
 
<a href="xterm.log.html#xterm_129">patch 129</a>
247
 
which introduced this bug
248
 
was designed to work around a bug which I have seen only running with FreeBSD.
249
 
To compound the irony,
250
 
there was some resistance at the time
251
 
(2000/4/5) by that organization to incorporating the fix
252
 
because it might be confused with the 4.0 release version.
 
288
 
 
289
<h2><A name="compare_versions">Comparing versions, by counting controls</a></h2>
 
290
<p>
 
291
Several of these programs are claimed (either by their developers,
 
292
or their users) to emulate "most" of xterm.
 
293
To me, "most" would be something quantifiable, e.g., 80 percent.
 
294
To satisfy my curiousity, I wrote a script to extract the control
 
295
sequence information from <a href="#ctlseqs_ms">ctlseqs.txt</a>.
 
296
This counts each control sequence, as well as the variations such as
 
297
setting bold, color, inverse video.
 
298
Then I (laboriously) inspected these terminal implementations:
 
299
<ul>
 
300
<li>xterm patch #266 ("xterm-new")
 
301
<li>X11R6.3 xterm (xterm-r6)
 
302
<li>DEC vt220
 
303
<li>DEC vt102
 
304
<li>rxvt 2.7.10
 
305
<li>rxvt-unicode 9.09 (urxvt) 
 
306
<li>konsole 2.5.3
 
307
<li>VTE 0.25.91 (vte), used in GNOME-Terminal and kindred.
 
308
</ul>
 
309
<p>
 
310
As of mid-November 2010, these are the latest implementations.
 
311
I included data for the vt220 and vt102 to be able to contrast the
 
312
various terminal <em>emulators</em> against those as well as xterm.
 
313
 
 
314
There are:
 
315
<ul>
 
316
<li>498 control sequences listed in the corresponding file
 
317
for xterm patch #266.
 
318
<li>192 of those are "primary", e.g., disregarding
 
319
parameters such as those distinguishing bold from color.
 
320
<li>37 of the primary control sequences have secondary sequences.
 
321
</ul>
 
322
For each control, there are three possibilities:
 
323
<ol>
 
324
<li>"yes" &mdash; the terminal implements it, matching xterm.
 
325
If xterm implements it, and it is a feature of vt220 or vt102,
 
326
then in turn xterm's behavior must match vt220 or vt102.
 
327
<li>"partial" &mdash; the terminal implements it, but its behavior does not match the
 
328
reference noted above.
 
329
<li>"no" &mdash; the terminal does not implement the control.
 
330
</ol>
 
331
<p>
 
332
The control sequences document lists a few controls which xterm
 
333
does not (completely) implement, e.g.,
 
334
<ul>
 
335
<li>key-repeat
 
336
<li>enabling LEDs other than scroll-lock
 
337
</ul>
 
338
None of the other terminal emulators implements those either.
 
339
<br>
 
340
<table border="1" summary="Comparing against the control sequences document">
 
341
<caption>Comparing against the control sequences document</caption>
 
342
<colgroup><col width="15%"><col width="15%"><col width="15%"><col width="35%"></colgroup>
 
343
<tr>
 
344
<th>yes</th>
 
345
<th>partial</th>
 
346
<th>no</th>
 
347
<th>program</th>
 
348
</tr>
 
349
<tr><td>488</td><td>4</td><td>6</td><td>xterm-new</td></tr>
 
350
<tr><td>154</td><td>6</td><td>338</td><td>xterm-r6</td></tr>
 
351
<tr><td>188</td><td>5</td><td>305</td><td>vt220</td></tr>
 
352
<tr><td>104</td><td>0</td><td>394</td><td>vt102</td></tr>
 
353
<tr><td>204</td><td>3</td><td>291</td><td>rxvt</td></tr>
 
354
<tr><td>219</td><td>3</td><td>276</td><td>urxvt</td></tr>
 
355
<tr><td>191</td><td>2</td><td>305</td><td>putty</td></tr>
 
356
<tr><td>170</td><td>3</td><td>325</td><td>konsole</td></tr>
 
357
<tr><td>184</td><td>6</td><td>308</td><td>vte</td></tr>
 
358
</table>
 
359
<p>
 
360
Modern xterm implements 188 primary controls.
 
361
In this table, konsole ranks last because it does not support vt52 emulation.
 
362
Aside from that, the various emulators implement much the same features
 
363
from xterm.
 
364
None implements as many as half of xterm's controls.
 
365
<table border="1" summary="Comparing against xterm">
 
366
<caption>Comparing against xterm</caption>
 
367
<colgroup><col width="15%"><col width="15%"><col width="15%"><col width="35%"></colgroup>
 
368
<tr>
 
369
<th>yes</th>
 
370
<th>partial</th>
 
371
<th>no</th>
 
372
<th>program</th>
 
373
</tr>
 
374
<tr><td>488</td><td>0</td><td>0</td><td>xterm-new</td></tr>
 
375
<tr><td>154</td><td>6</td><td>328</td><td>xterm-r6</td></tr>
 
376
<tr><td>182</td><td>2</td><td>304</td><td>vt220</td></tr>
 
377
<tr><td>98</td><td>0</td><td>390</td><td>vt102</td></tr>
 
378
<tr><td>204</td><td>3</td><td>281</td><td>rxvt</td></tr>
 
379
<tr><td>219</td><td>3</td><td>266</td><td>urxvt</td></tr>
 
380
<tr><td>189</td><td>2</td><td>297</td><td>putty</td></tr>
 
381
<tr><td>170</td><td>3</td><td>315</td><td>konsole</td></tr>
 
382
<tr><td>184</td><td>6</td><td>298</td><td>vte</td></tr>
 
383
</table>
 
384
<p>
 
385
DEC VT220 implements 96 primary controls.
 
386
Modern xterm (as documented), implements most of the VT220.
 
387
VTE implements fewer than half.
 
388
The others are a little better.
 
389
None of the others could be used as a real VT220.
 
390
<table border="1" summary="Comparing against vt220">
 
391
<caption>Comparing against vt220</caption>
 
392
<colgroup><col width="15%"><col width="15%"><col width="15%"><col width="35%"></colgroup>
 
393
<tr>
 
394
<th>yes</th>
 
395
<th>partial</th>
 
396
<th>no</th>
 
397
<th>program</th>
 
398
</tr>
 
399
<tr><td>182</td><td>0</td><td>6</td><td>xterm-new</td></tr>
 
400
<tr><td>78</td><td>6</td><td>104</td><td>xterm-r6</td></tr>
 
401
<tr><td>188</td><td>0</td><td>0</td><td>vt220</td></tr>
 
402
<tr><td>104</td><td>0</td><td>84</td><td>vt102</td></tr>
 
403
<tr><td>101</td><td>3</td><td>84</td><td>rxvt</td></tr>
 
404
<tr><td>106</td><td>3</td><td>79</td><td>urxvt</td></tr>
 
405
<tr><td>107</td><td>2</td><td>79</td><td>putty</td></tr>
 
406
<tr><td>100</td><td>3</td><td>85</td><td>konsole</td></tr>
 
407
<tr><td>88</td><td>6</td><td>94</td><td>vte</td></tr>
 
408
</table>
 
409
<p>
 
410
DEC VT102 (the actual flavor used for "vt100" in most cases),
 
411
implements 68 primary controls.
 
412
Again, VTE fares worst, and the others a little better.
 
413
<table border="1" summary="Comparing against vt102">
 
414
<caption>Comparing against vt102</caption>
 
415
<colgroup><col width="15%"><col width="15%"><col width="15%"><col width="35%"></colgroup>
 
416
<tr>
 
417
<th>yes</th>
 
418
<th>partial</th>
 
419
<th>no</th>
 
420
<th>program</th>
 
421
</tr>
 
422
<tr><td>98</td><td>0</td><td>6</td><td>xterm-new</td></tr>
 
423
<tr><td>70</td><td>6</td><td>28</td><td>xterm-r6</td></tr>
 
424
<tr><td>104</td><td>0</td><td>0</td><td>vt220</td></tr>
 
425
<tr><td>104</td><td>0</td><td>0</td><td>vt102</td></tr>
 
426
<tr><td>79</td><td>2</td><td>23</td><td>rxvt</td></tr>
 
427
<tr><td>81</td><td>2</td><td>21</td><td>urxvt</td></tr>
 
428
<tr><td>86</td><td>2</td><td>16</td><td>putty</td></tr>
 
429
<tr><td>85</td><td>3</td><td>16</td><td>konsole</td></tr>
 
430
<tr><td>60</td><td>1</td><td>43</td><td>vte</td></tr>
 
431
</table>
 
432
<p>
 
433
In summary, none of the other terminal emulators emulates "most" of xterm.
 
434
Instead, they implement the most commonly-used control sequences,
 
435
and there are differences between them.
253
436
 
254
437
<h2><A NAME="how_do_i">How do I ...</A></h2>
255
438
Not really problems, but frequently asked questions (the point of this,
263
446
</UL>
264
447
 
265
448
<h3><A NAME="how2_fsize">How do I change the font size?</A></h3>
266
 
xterm uses fonts given as resource settings.
 
449
Xterm uses fonts given as resource settings.
267
450
You can switch between these fonts at runtime, using a menu.
268
451
This is documented in the manpage, in the
269
452
<a href="manpage/xterm.html#MENUS">MENUS</a> section.
274
457
from which you can select fonts that are specified in xterm's resources.
275
458
Usually these are in increasing order of size.
276
459
<p>
277
 
XFree86 xterm provides the menu, plus a feature adapted from rxvt: pressing
 
460
Modern xterm provides the menu, plus a feature adapted from rxvt: pressing
278
461
the shifted keypad plus or minus keys steps through the font menu selections,
279
462
in order of their size.
280
463
<p>
281
 
xterm's manpage does not document the syntax for X resources;
 
464
Xterm's manpage does not document the syntax for X resources;
282
465
it is done in the X documentation.
283
466
If you are instead asking about a
284
467
<a href="#utf8_fonts">problem displaying a given font</a>,
298
481
</ul>
299
482
Well, what about logging?
300
483
Some versions of xterm support logging to a file.
301
 
In fact XFree86 xterm does.  Logging was dropped from X Consortium xterm
 
484
In fact modern xterm does.  Logging was dropped from X Consortium xterm
302
485
during X11R5 due to security concerns.  Those were addressed, but logging
303
486
was not reinstated
304
487
(in fact there is a related <a href="#bug_xterm_r6">bug</a> in xterm).
317
500
require interpretation to make sense of the trace.  You probably
318
501
would not send that trace to a printer (not twice, anyway).
319
502
<p>
320
 
If you want to print the contents of the screen, XFree86 xterm
 
503
If you want to print the contents of the screen, modern xterm
321
504
implements, as part of the VT100 emulation, an "attached" printer.
322
505
<ul>
323
506
<li>The printer is really a pipe command, to which xterm writes.
351
534
printer pipe unless it was already opened by the application running in xterm.
352
535
 
353
536
<h3><A NAME="how2_fkeys">How do I set up function keys?</A></h3>
354
 
With XFree86 xterm, this is relatively simple.  So I'll answer that first.
 
537
With modern xterm, this is relatively simple.  So I'll answer that first.
355
538
<P>
356
 
With X Consortium xterm, you have partial support for DEC VTxxx function keys.
 
539
With X Consortium xterm, you had partial support for DEC VTxxx function keys.
357
540
Function keys F1 to F12 correspond to DEC's F1 to F12 (sort of).
358
541
Actually, DEC's VT220 terminals do not have codes for F1 through F5.
359
542
They are reserved for local functions.
362
545
Finally, though xterm is reputed to be VT100-compatible, it has no support
363
546
for the VT100 keypad (PF1 to PF4, and the "," key).
364
547
<P>
365
 
XFree86 xterm changes the X Consortium codes for F1 to F4 to match the
 
548
Modern (XFree86) xterm changed the X Consortium codes
 
549
for F1 to F4 to match the
366
550
VT100 PF1 to PF4, except when the emulation level is VT220 and up.
367
551
In this case, it generates the same F1 to F4 codes as X Consortium xterm.
368
552
Moreover, it adds a new resource <code>sunKeyboard</code>, which
372
556
with F1 to F12 to get F13 to F24, and use the "+" key on the keypad as an
373
557
alias for "," (comma).
374
558
<P>
375
 
The emulation level for XFree86 xterm is set via the resource
 
559
The emulation level for modern xterm is set via the resource
376
560
<code>decTerminalID</code>, e.g., to 220 for a VT220.
377
561
Once set, applications can set the emulation level up or down within that
378
562
limit.  DEC's terminals are configured in much the same way by a setup
383
567
I have seen a few postings on the newsgroups that do this.
384
568
Here is one from Bruce Momjian &lt;root@candle.pha.pa.us&gt;
385
569
for a VT220:
386
 
<PRE><code>
387
 
        xterm $XTERMFLAGS +rw +sb +ls $@ -tm 'erase ^? intr ^c' \
388
 
                -name vt220 -title vt220 -tn xterm-220 "$@" &amp;
389
 
</code></PRE>
390
 
<P>
 
570
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
571
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xterm&nbsp;<font color="#008080">$XTERMFLAGS</font>&nbsp;+rw&nbsp;+sb&nbsp;+ls&nbsp;<font color="#008080">$@</font>&nbsp;-tm&nbsp;<font color="#800080">'erase&nbsp;^?&nbsp;intr&nbsp;^c'</font>&nbsp;\<br>
 
572
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-name&nbsp;vt220&nbsp;-title&nbsp;vt220&nbsp;-tn&nbsp;xterm-220&nbsp;<font color="#800080">"$@"</font>&nbsp;&amp;<br>
 
573
<!--atr2html}}--></p>
391
574
with the corresponding resources:
392
 
<PRE><code>
393
 
        XTerm*VT100.translations: #override \n\
394
 
                &lt;Key&gt;Home: string(0x1b) string("[3~") \n \
395
 
                &lt;Key&gt;End: string(0x1b) string("[4~") \n
396
 
        vt220*VT100.translations: #override \n\
397
 
        ~Shift  &lt;Key&gt;F1: string(0x1b) string("OP") \n \
398
 
        ~Shift  &lt;Key&gt;F2: string(0x1b) string("OQ") \n \
399
 
        ~Shift  &lt;Key&gt;F3: string(0x1b) string("OR") \n \
400
 
        ~Shift  &lt;Key&gt;F4: string(0x1b) string("OS") \n \
401
 
        ~Shift  &lt;Key&gt;F5: string(0x1b) string("[16~") \n \
402
 
        ~Shift  &lt;Key&gt;F6: string(0x1b) string("[17~") \n \
403
 
        ~Shift  &lt;Key&gt;F7: string(0x1b) string("[18~") \n \
404
 
        ~Shift  &lt;Key&gt;F8: string(0x1b) string("[19~") \n \
405
 
        ~Shift  &lt;Key&gt;F9: string(0x1b) string("[20~") \n \
406
 
        ~Shift  &lt;Key&gt;F10: string(0x1b) string("[21~") \n \
407
 
        ~Shift  &lt;Key&gt;F11: string(0x1b) string("[28~") \n \
408
 
        ~Shift  &lt;Key&gt;F12: string(0x1b) string("[29~") \n \
409
 
        Shift   &lt;Key&gt;F1: string(0x1b) string("[23~") \n \
410
 
        Shift   &lt;Key&gt;F2: string(0x1b) string("[24~") \n \
411
 
        Shift   &lt;Key&gt;F3: string(0x1b) string("[25~") \n \
412
 
        Shift   &lt;Key&gt;F4: string(0x1b) string("[26~") \n \
413
 
        Shift   &lt;Key&gt;F5: string(0x1b) string("[K~") \n \
414
 
        Shift   &lt;Key&gt;F6: string(0x1b) string("[31~") \n \
415
 
        Shift   &lt;Key&gt;F7: string(0x1b) string("[31~") \n \
416
 
        Shift   &lt;Key&gt;F8: string(0x1b) string("[32~") \n \
417
 
        Shift   &lt;Key&gt;F9: string(0x1b) string("[33~") \n \
418
 
        Shift   &lt;Key&gt;F10: string(0x1b) string("[34~") \n \
419
 
        Shift   &lt;Key&gt;F11: string(0x1b) string("[28~") \n \
420
 
        Shift   &lt;Key&gt;F12: string(0x1b) string("[29~") \n \
421
 
                &lt;Key&gt;Print: string(0x1b) string("[32~") \n\
422
 
                &lt;Key&gt;Cancel: string(0x1b) string("[33~") \n\
423
 
                &lt;Key&gt;Pause: string(0x1b) string("[34~") \n\
424
 
                &lt;Key&gt;Insert: string(0x1b) string("[2~") \n\
425
 
                &lt;Key&gt;Delete: string(0x1b) string("[3~") \n\
426
 
                &lt;Key&gt;Home: string(0x1b) string("[1~") \n\
427
 
                &lt;Key&gt;End: string(0x1b) string("[4~") \n\
428
 
                &lt;Key&gt;Prior: string(0x1b) string("[5~") \n\
429
 
                &lt;Key&gt;Next: string(0x1b) string("[6~") \n\
430
 
                &lt;Key&gt;BackSpace: string(0x7f) \n\
431
 
                &lt;Key&gt;Num_Lock: string(0x1b) string("OP") \n\
432
 
                &lt;Key&gt;KP_Divide: string(0x1b) string("Ol") \n\
433
 
                &lt;Key&gt;KP_Multiply: string(0x1b) string("Om") \n\
434
 
                &lt;Key&gt;KP_Subtract: string(0x1b) string("OS") \n\
435
 
                &lt;Key&gt;KP_Add: string(0x1b) string("OM") \n\
436
 
                &lt;Key&gt;KP_Enter: string(0x1b) string("OM") \n\
437
 
                &lt;Key&gt;KP_Decimal: string(0x1b) string("On") \n\
438
 
                &lt;Key&gt;KP_0: string(0x1b) string("Op") \n\
439
 
                &lt;Key&gt;KP_1: string(0x1b) string("Oq") \n\
440
 
                &lt;Key&gt;KP_2: string(0x1b) string("Or") \n\
441
 
                &lt;Key&gt;KP_3: string(0x1b) string("Os") \n\
442
 
                &lt;Key&gt;KP_4: string(0x1b) string("Ot") \n\
443
 
                &lt;Key&gt;KP_5: string(0x1b) string("Ou") \n\
444
 
                &lt;Key&gt;KP_6: string(0x1b) string("Ov") \n\
445
 
                &lt;Key&gt;KP_7: string(0x1b) string("Ow") \n\
446
 
                &lt;Key&gt;KP_8: string(0x1b) string("Ox") \n\
447
 
                &lt;Key&gt;KP_9: string(0x1b) string("Oy") \n
448
 
 
449
 
        !       &lt;Key&gt;Up: string(0x1b) string("[A") \n\
450
 
        !       &lt;Key&gt;Down: string(0x1b) string("[B") \n\
451
 
        !       &lt;Key&gt;Right: string(0x1b) string("[C") \n\
452
 
        !       &lt;Key&gt;Left: string(0x1b) string("[D") \n\
453
 
 
454
 
        *visualBell:    true
455
 
        *saveLines:    1000
456
 
        *cursesemul:    true
457
 
        *scrollKey: true
458
 
        *scrollBar: true
459
 
</code></PRE>
 
575
<p>
 
576
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
577
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">translations</font>:<font color="#800080">&nbsp;#override&nbsp;\n\<br>
 
578
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Home:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">3</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
579
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">End:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">4</font></strong><font color="#800080">~")&nbsp;\n</font><br>
 
580
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">vt220</font>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">translations</font>:<font color="#800080">&nbsp;#override&nbsp;\n\<br>
 
581
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F1:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("OP")&nbsp;\n&nbsp;\<br>
 
582
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F2:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("OQ")&nbsp;\n&nbsp;\<br>
 
583
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F3:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("OR")&nbsp;\n&nbsp;\<br>
 
584
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F4:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("OS")&nbsp;\n&nbsp;\<br>
 
585
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F5:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">16</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
586
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F6:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">17</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
587
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F7:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">18</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
588
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F8:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">19</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
589
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F9:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">20</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
590
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F10:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">21</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
591
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F11:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">28</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
592
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F12:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">29</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
593
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F1:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">23</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
594
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F2:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">24</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
595
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F3:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">25</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
596
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F4:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">26</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
597
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F5:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[K~")&nbsp;\n&nbsp;\<br>
 
598
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F6:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">31</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
599
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F7:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">31</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
600
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F8:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">32</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
601
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F9:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">33</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
602
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F10:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">34</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
603
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F11:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">28</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
604
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F12:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">29</font></strong><font color="#800080">~")&nbsp;\n&nbsp;\<br>
 
605
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Print:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">32</font></strong><font color="#800080">~")&nbsp;\n\<br>
 
606
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Cancel:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">33</font></strong><font color="#800080">~")&nbsp;\n\<br>
 
607
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Pause:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">34</font></strong><font color="#800080">~")&nbsp;\n\<br>
 
608
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Insert:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">2</font></strong><font color="#800080">~")&nbsp;\n\<br>
 
609
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Delete:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">3</font></strong><font color="#800080">~")&nbsp;\n\<br>
 
610
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Home:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">1</font></strong><font color="#800080">~")&nbsp;\n\<br>
 
611
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">End:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">4</font></strong><font color="#800080">~")&nbsp;\n\<br>
 
612
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Prior:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">5</font></strong><font color="#800080">~")&nbsp;\n\<br>
 
613
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Next:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("[</font><strong><font color="#008080">6</font></strong><font color="#800080">~")&nbsp;\n\<br>
 
614
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">BackSpace:&nbsp;string(</font><strong><font color="#008080">0x7f</font></strong><font color="#800080">)&nbsp;\n\<br>
 
615
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Num_Lock:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("OP")&nbsp;\n\<br>
 
616
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Divide:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Ol")&nbsp;\n\<br>
 
617
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Multiply:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Om")&nbsp;\n\<br>
 
618
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Subtract:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("OS")&nbsp;\n\<br>
 
619
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Add:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("OM")&nbsp;\n\<br>
 
620
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Enter:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("OM")&nbsp;\n\<br>
 
621
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Decimal:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("On")&nbsp;\n\<br>
 
622
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_0:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Op")&nbsp;\n\<br>
 
623
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_1:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Oq")&nbsp;\n\<br>
 
624
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_2:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Or")&nbsp;\n\<br>
 
625
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_3:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Os")&nbsp;\n\<br>
 
626
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_4:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Ot")&nbsp;\n\<br>
 
627
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_5:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Ou")&nbsp;\n\<br>
 
628
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_6:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Ov")&nbsp;\n\<br>
 
629
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_7:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Ow")&nbsp;\n\<br>
 
630
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_8:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Ox")&nbsp;\n\<br>
 
631
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_9:&nbsp;string(</font><strong><font color="#008080">0x1b</font></strong><font color="#800080">)&nbsp;string("Oy")&nbsp;\n</font><br>
 
632
&nbsp;<br>
 
633
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800000">!&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Up:&nbsp;string(0x1b)&nbsp;string("[A")&nbsp;\n\<br>
 
634
</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800000">!&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Down:&nbsp;string(0x1b)&nbsp;string("[B")&nbsp;\n\<br>
 
635
</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800000">!&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Right:&nbsp;string(0x1b)&nbsp;string("[C")&nbsp;\n\<br>
 
636
</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800000">!&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Left:&nbsp;string(0x1b)&nbsp;string("[D")&nbsp;\n\<br>
 
637
</font>&nbsp;<br>
 
638
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<font color="#008080">visualBell</font>:<font color="#800080">&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
639
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<font color="#008080">saveLines</font>:<font color="#800080">&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#008080">1000</font></strong><br>
 
640
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<font color="#008080">cursesemul</font>:<font color="#800080">&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
641
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<font color="#008080">scrollKey</font>:<font color="#800080">&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
642
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<font color="#008080">scrollBar</font>:<font color="#800080">&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
643
<!--atr2html}}--></p>
 
644
<p>
460
645
Note that real VT220 terminals use shifted function keys to mean something
461
 
different: the user-programmable keys (i.e., DECUDK).  XFree86 xterm
 
646
different: the user-programmable keys (i.e., DECUDK).  Modern xterm
462
647
supports this, but the translations do not (they're using shift to select
463
648
F13 to F20).
464
649
<P>
465
650
Here's another one, from
466
651
Robert Ess &lt;ress@spd.dsccc.com&gt;:
467
 
<PRE><code>
468
 
        #!/bin/sh
469
 
 
470
 
        #               vax
471
 
        # 09-17-96      Bob Ess      - initial creation
472
 
        # 09-26-96      Shig Katada  - Additional keybindings
473
 
        #
474
 
        #               Script file to incorporate keybindings and command line
475
 
        #               options for connecting to a VAX node
476
 
 
477
 
        # Usage statement
478
 
        Usage(){
479
 
                echo
480
 
                echo " Usage  : vax -options"
481
 
                echo
482
 
                echo " Options: -80   for 80 column terminal"
483
 
                echo "          -132  for 132 column terminal"
484
 
                echo "          -fg colorname"
485
 
                echo "          -bg colorname"
486
 
                echo "          -fn fontname"
487
 
                echo "          -fb bold fontname"
488
 
                echo "          -host [altair] [devel] [leonis] [castor]"
489
 
                echo ""
490
 
                echo " Example: \"vax -80 -fg white -bg black -fn 9x15 -fb 9x15b -host castor\""
491
 
                echo "          Starts a VAX session with an 80 column terminal"
492
 
                echo "          with a black background, white foreground, a normal"
493
 
                echo "          font of 9x15 and a bold font of 9x15b, and connects"
494
 
                echo "          to the node 'castor'"
495
 
                echo
496
 
                echo "          If you need additional help, please call Workstation"
497
 
                echo "          Services at x92396."
498
 
                echo
499
 
                exit 1
500
 
        }
501
 
 
502
 
 
503
 
        # Default to a black foreground with a white background.
504
 
        # Use the 9x15 and 9x15bold fonts. Connect to castor by default.
505
 
        #
506
 
        FG=black
507
 
        BG=white
508
 
        HOST=castor
509
 
        FONT=9x15
510
 
        BFONT=9x15bold
511
 
        COLS=80
512
 
 
513
 
 
514
 
        # Parse the command line arguments
515
 
        #
516
 
        while [ $# != 0 ];
517
 
        do
518
 
                case $1 in
519
 
                        -80)    COLS=80
520
 
                                FONT=spc12x24c
521
 
                                BFONT=spc12x24b
522
 
                                shift
523
 
                                ;;
524
 
                        -132)   COLS=132
525
 
                                FONT=9x15
526
 
                                BFONT=9x15b
527
 
                                shift
528
 
                                ;;
529
 
                        -fg)    shift
530
 
                                FG=$1
531
 
                                shift;;
532
 
                        -bg)    shift
533
 
                                BG=$1
534
 
                                shift;;
535
 
                        -fn)    shift
536
 
                                FONT=$1
537
 
                                shift;;
538
 
                        -fb)    shift
539
 
                                BFONT=$1
540
 
                                shift;;
541
 
                        -host)  shift
542
 
                                HOST=$1
543
 
                                shift;;
544
 
                        -help)  Usage;;
545
 
                        *)      Usage;;
546
 
                esac
547
 
        done
548
 
 
549
 
 
550
 
        xterm  -title "VAX" -sb -sl 1200 -geo ${COLS}x24 -fg ${FG} -bg ${BG} \
551
 
                -cr red -fn ${FONT} -fb ${BFONT} -xrm \
552
 
                'XTerm*VT100.translations:     #override \n\
553
 
                &lt;Key&gt;Insert:            string(\001) \n\
554
 
                Shift &lt;Key&gt;Up:          scroll-back(1,lines) \n\
555
 
                Shift &lt;Key&gt;Down:        scroll-forw(1,lines) \n\
556
 
                Shift &lt;Key&gt;Right:       string(0x1b) string("f") \n\
557
 
                Shift &lt;Key&gt;Left:        string(0x1b) string("b") \n\
558
 
                Shift &lt;Key&gt;Delete:      string(0x1b) string(0x08) \n\
559
 
                Shift &lt;Key&gt;Tab:         string(0x1b) string("*") \n\
560
 
                &lt;Key&gt;0x1000FF0D:        scroll-back(1,page) \n\
561
 
                &lt;Key&gt;0x1000FF0E:        scroll-forw(1,page) \n\
562
 
                &lt;Key&gt;0x1000FF09:        string(\010) \n\
563
 
                &lt;Key&gt;0x1000FF0A:        string(\005) \n\
564
 
                &lt;Key&gt;BackSpace:         string(0xff) \n\
565
 
                &lt;Key&gt;Select:            select-start() \n\
566
 
                &lt;Key&gt;0x1000FF02:        select-end(PRIMARY,CUT_BUFFER0) \n\
567
 
                Meta &lt;Key&gt;0x1000FF02:   select-end(CLIPBOARD) \n\
568
 
                &lt;Key&gt;0x1000FF04:        insert-selection(PRIMARY,CUT_BUFFER0) \n\
569
 
                Meta &lt;Key&gt;0x1000FF04:   insert-selection(CLIPBOARD) \n\
570
 
                &lt;Key&gt;F1:                string(0x1b) string("OP") \n\
571
 
                &lt;Key&gt;F2:                string(0x1b) string("OQ") \n\
572
 
                &lt;Key&gt;F3:                string(0x1b) string("OR") \n\
573
 
                &lt;Key&gt;F4:                string(0x1b) string("OS") \n\
574
 
                &lt;Key&gt;F5:                string(0x1b) string("OA") \n\
575
 
                &lt;Key&gt;F11:               string(0x1b) string("[23~") \n\
576
 
                &lt;Key&gt;F12:               string(0x1b) string("[24~") \n\
577
 
                &lt;Key&gt;KP_0:              string(0x1b) string("Op") \n\
578
 
                &lt;Key&gt;KP_1:              string(0x1b) string("Oq") \n\
579
 
                &lt;Key&gt;KP_2:              string(0x1b) string("Or") \n\
580
 
                &lt;Key&gt;KP_3:              string(0x1b) string("Os") \n\
581
 
                &lt;Key&gt;KP_4:              string(0x1b) string("Ot") \n\
582
 
                &lt;Key&gt;KP_5:              string(0x1b) string("Ou") \n\
583
 
                &lt;Key&gt;KP_Divide:         string(0x1b) string("OP") \n\
584
 
                &lt;Key&gt;KP_Multiply:       string(0x1b) string("[29~") \n\
585
 
                &lt;Key&gt;KP_Enter:          string(0x1b) string("OM") \n\
586
 
                &lt;Key&gt;KP_Subtract:       string(0x1b) string("Om") \n\
587
 
                &lt;Key&gt;KP_Add:            string(0x1b) string("Ol") \n\
588
 
                &lt;Key&gt;KP_Decimal:        string(0x1b) string("On") \n\
589
 
                &lt;Btn1Down&gt;:             select-start() \n\
590
 
                &lt;Btn1Motion&gt;:           select-extend() \n\
591
 
                &lt;Btn1Up&gt;:               select-end(PRIMARY,CUT_BUFFER0) \n\
592
 
                Button1&lt;Btn2Down&gt;:      select-end(CLIPBOARD) \n\
593
 
                Button1&lt;Btn2Up&gt;:        ignore()' \
594
 
                -e telnet $HOST &amp;
595
 
</code></PRE>
 
652
<p>
 
653
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
654
<font color="#800000">#!/bin/sh</font><br>
 
655
&nbsp;<br>
 
656
<font color="#800000">#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;vax</font><br>
 
657
<font color="#800000">#&nbsp;09-17-96&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Bob&nbsp;Ess&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;initial&nbsp;creation</font><br>
 
658
<font color="#800000">#&nbsp;09-26-96&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shig&nbsp;Katada&nbsp;&nbsp;-&nbsp;Additional&nbsp;keybindings</font><br>
 
659
<font color="#800000">#</font><br>
 
660
<font color="#800000">#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Script&nbsp;file&nbsp;to&nbsp;incorporate&nbsp;keybindings&nbsp;and&nbsp;command&nbsp;line</font><br>
 
661
<font color="#800000">#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;options&nbsp;for&nbsp;connecting&nbsp;to&nbsp;a&nbsp;VAX&nbsp;node</font><br>
 
662
&nbsp;<br>
 
663
<font color="#800000">#&nbsp;Usage&nbsp;statement</font><br>
 
664
Usage()<strong><font color="#800000">{</font></strong><br>
 
665
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong><br>
 
666
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;Usage&nbsp;&nbsp;:&nbsp;vax&nbsp;-options"</font><br>
 
667
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong><br>
 
668
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;Options:&nbsp;-80&nbsp;&nbsp;&nbsp;for&nbsp;80&nbsp;column&nbsp;terminal"</font><br>
 
669
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-132&nbsp;&nbsp;for&nbsp;132&nbsp;column&nbsp;terminal"</font><br>
 
670
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fg&nbsp;colorname"</font><br>
 
671
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-bg&nbsp;colorname"</font><br>
 
672
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fn&nbsp;fontname"</font><br>
 
673
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fb&nbsp;bold&nbsp;fontname"</font><br>
 
674
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-host&nbsp;[altair]&nbsp;[devel]&nbsp;[leonis]&nbsp;[castor]"</font><br>
 
675
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">""</font><br>
 
676
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;Example:&nbsp;</font><strong><font color="#800000">\</font></strong><font color="#800080">"vax&nbsp;-80&nbsp;-fg&nbsp;white&nbsp;-bg&nbsp;black&nbsp;-fn&nbsp;9x15&nbsp;-fb&nbsp;9x15b&nbsp;-host&nbsp;castor</font><strong><font color="#800000">\</font></strong><font color="#800080">""</font><br>
 
677
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Starts&nbsp;a&nbsp;VAX&nbsp;session&nbsp;with&nbsp;an&nbsp;80&nbsp;column&nbsp;terminal"</font><br>
 
678
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;with&nbsp;a&nbsp;black&nbsp;background,&nbsp;white&nbsp;foreground,&nbsp;a&nbsp;normal"</font><br>
 
679
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;font&nbsp;of&nbsp;9x15&nbsp;and&nbsp;a&nbsp;bold&nbsp;font&nbsp;of&nbsp;9x15b,&nbsp;and&nbsp;connects"</font><br>
 
680
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;to&nbsp;the&nbsp;node&nbsp;'castor'"</font><br>
 
681
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong><br>
 
682
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;you&nbsp;need&nbsp;additional&nbsp;help,&nbsp;please&nbsp;call&nbsp;Workstation"</font><br>
 
683
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Services&nbsp;at&nbsp;x92396."</font><br>
 
684
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong><br>
 
685
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">exit</font></strong>&nbsp;<strong><font color="#008080">1</font></strong><br>
 
686
<strong><font color="#800000">}</font></strong><br>
 
687
&nbsp;<br>
 
688
<font color="#800000">#&nbsp;Default&nbsp;to&nbsp;a&nbsp;black&nbsp;foreground&nbsp;with&nbsp;a&nbsp;white&nbsp;background.</font><br>
 
689
<font color="#800000">#&nbsp;Use&nbsp;the&nbsp;9x15&nbsp;and&nbsp;9x15bold&nbsp;fonts.&nbsp;Connect&nbsp;to&nbsp;castor&nbsp;by&nbsp;default.</font><br>
 
690
<font color="#800000">#</font><br>
 
691
<font color="#008080">FG</font>=black<br>
 
692
<font color="#008080">BG</font>=white<br>
 
693
<font color="#008080">HOST</font>=castor<br>
 
694
<font color="#008080">FONT</font>=<strong><font color="#008080">9</font></strong>x15<br>
 
695
<font color="#008080">BFONT</font>=<strong><font color="#008080">9</font></strong>x15bold<br>
 
696
<font color="#008080">COLS</font>=<strong><font color="#008080">80</font></strong><br>
 
697
&nbsp;<br>
 
698
<font color="#800000">#&nbsp;Parse&nbsp;the&nbsp;command&nbsp;line&nbsp;arguments</font><br>
 
699
<font color="#800000">#</font><br>
 
700
<strong><font color="#000080">while</font></strong>&nbsp;[&nbsp;<font color="#008080">$#</font>&nbsp;!=&nbsp;<strong><font color="#008080">0</font></strong>&nbsp;];<br>
 
701
<strong><font color="#000080">do</font></strong><br>
 
702
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">case</font></strong>&nbsp;<font color="#008080">$1</font>&nbsp;<strong><font color="#000080">in</font></strong><br>
 
703
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#008080">-80</font></strong>)&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">COLS</font>=<strong><font color="#008080">80</font></strong><br>
 
704
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">FONT</font>=spc12x24c<br>
 
705
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">BFONT</font>=spc12x24b<br>
 
706
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
707
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<br>
 
708
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#008080">-132</font></strong>)&nbsp;&nbsp;&nbsp;<font color="#008080">COLS</font>=<strong><font color="#008080">132</font></strong><br>
 
709
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">FONT</font>=<strong><font color="#008080">9</font></strong>x15<br>
 
710
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">BFONT</font>=<strong><font color="#008080">9</font></strong>x15b<br>
 
711
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
712
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<br>
 
713
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fg)&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
714
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">FG</font>=<font color="#008080">$1</font><br>
 
715
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong>;;<br>
 
716
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-bg)&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
717
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">BG</font>=<font color="#008080">$1</font><br>
 
718
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong>;;<br>
 
719
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fn)&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
720
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">FONT</font>=<font color="#008080">$1</font><br>
 
721
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong>;;<br>
 
722
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fb)&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
723
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">BFONT</font>=<font color="#008080">$1</font><br>
 
724
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong>;;<br>
 
725
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-host)&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
726
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">HOST</font>=<font color="#008080">$1</font><br>
 
727
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong>;;<br>
 
728
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-help)&nbsp;&nbsp;Usage;;<br>
 
729
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Usage;;<br>
 
730
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">esac</font></strong><br>
 
731
<strong><font color="#000080">done</font></strong><br>
 
732
&nbsp;<br>
 
733
xterm&nbsp;&nbsp;-title&nbsp;<font color="#800080">"VAX"</font>&nbsp;-sb&nbsp;-sl&nbsp;<strong><font color="#008080">1200</font></strong>&nbsp;-geo&nbsp;<font color="#008080">${COLS}</font>x24&nbsp;-fg&nbsp;<font color="#008080">${FG}</font>&nbsp;-bg&nbsp;<font color="#008080">${BG}</font>&nbsp;\<br>
 
734
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-cr&nbsp;red&nbsp;-fn&nbsp;<font color="#008080">${FONT}</font>&nbsp;-fb&nbsp;<font color="#008080">${BFONT}</font>&nbsp;-xrm&nbsp;\<br>
 
735
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800080">'XTerm*VT100.translations:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#override&nbsp;\n\<br>
 
736
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Insert:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(\001)&nbsp;\n\<br>
 
737
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&lt;Key&gt;Up:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scroll-back(1,lines)&nbsp;\n\<br>
 
738
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&lt;Key&gt;Down:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scroll-forw(1,lines)&nbsp;\n\<br>
 
739
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&lt;Key&gt;Right:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("f")&nbsp;\n\<br>
 
740
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&lt;Key&gt;Left:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("b")&nbsp;\n\<br>
 
741
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&lt;Key&gt;Delete:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string(0x08)&nbsp;\n\<br>
 
742
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&lt;Key&gt;Tab:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("*")&nbsp;\n\<br>
 
743
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;0x1000FF0D:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scroll-back(1,page)&nbsp;\n\<br>
 
744
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;0x1000FF0E:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scroll-forw(1,page)&nbsp;\n\<br>
 
745
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;0x1000FF09:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(\010)&nbsp;\n\<br>
 
746
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;0x1000FF0A:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(\005)&nbsp;\n\<br>
 
747
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;BackSpace:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0xff)&nbsp;\n\<br>
 
748
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Select:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;select-start()&nbsp;\n\<br>
 
749
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;0x1000FF02:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;select-end(PRIMARY,CUT_BUFFER0)&nbsp;\n\<br>
 
750
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Meta&nbsp;&lt;Key&gt;0x1000FF02:&nbsp;&nbsp;&nbsp;select-end(CLIPBOARD)&nbsp;\n\<br>
 
751
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;0x1000FF04:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;insert-selection(PRIMARY,CUT_BUFFER0)&nbsp;\n\<br>
 
752
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Meta&nbsp;&lt;Key&gt;0x1000FF04:&nbsp;&nbsp;&nbsp;insert-selection(CLIPBOARD)&nbsp;\n\<br>
 
753
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;F1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("OP")&nbsp;\n\<br>
 
754
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;F2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("OQ")&nbsp;\n\<br>
 
755
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;F3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("OR")&nbsp;\n\<br>
 
756
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;F4:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("OS")&nbsp;\n\<br>
 
757
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;F5:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("OA")&nbsp;\n\<br>
 
758
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;F11:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("[23~")&nbsp;\n\<br>
 
759
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;F12:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("[24~")&nbsp;\n\<br>
 
760
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_0:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("Op")&nbsp;\n\<br>
 
761
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("Oq")&nbsp;\n\<br>
 
762
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("Or")&nbsp;\n\<br>
 
763
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("Os")&nbsp;\n\<br>
 
764
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_4:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("Ot")&nbsp;\n\<br>
 
765
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_5:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("Ou")&nbsp;\n\<br>
 
766
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Divide:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("OP")&nbsp;\n\<br>
 
767
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Multiply:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("[29~")&nbsp;\n\<br>
 
768
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Enter:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("OM")&nbsp;\n\<br>
 
769
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Subtract:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("Om")&nbsp;\n\<br>
 
770
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Add:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("Ol")&nbsp;\n\<br>
 
771
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Decimal:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;string("On")&nbsp;\n\<br>
 
772
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Btn1Down&gt;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;select-start()&nbsp;\n\<br>
 
773
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Btn1Motion&gt;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;select-extend()&nbsp;\n\<br>
 
774
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Btn1Up&gt;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;select-end(PRIMARY,CUT_BUFFER0)&nbsp;\n\<br>
 
775
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Button1&lt;Btn2Down&gt;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;select-end(CLIPBOARD)&nbsp;\n\<br>
 
776
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Button1&lt;Btn2Up&gt;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ignore()'</font>&nbsp;\<br>
 
777
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-e&nbsp;telnet&nbsp;<font color="#008080">$HOST</font>&nbsp;&amp;<br>
 
778
<!--atr2html}}--></p>
 
779
<p>
596
780
Finally (for the moment) is a further modification of Robert Ess's script
597
781
by <a href="http://www-personal.une.edu.au/~oahlefel/">Erik Ahlefeldt</a>,
598
782
&lt;oahlefel@metz.une.edu.au&gt;.
706
890
                Left                 Left
707
891
</pre>
708
892
and the script:
709
 
<pre><code>
710
 
        #!/bin/sh
711
 
        #               vmsterm
712
 
        #               from an original script by Bob Ess
713
 
        #               key translations by Erik Ahlefeldt
714
 
        #
715
 
        #               Script file using Xterm and telnet to connect to a VMS host
716
 
        #               and give a decent vt220 emulation.
717
 
        #
718
 
        # Usage statement
719
 
        Usage(){
720
 
                echo
721
 
                echo " Usage  : vmsterm -options"
722
 
                echo
723
 
                echo " Options: -80   for 80 column terminal"
724
 
                echo "          -132  for 132 column terminal"
725
 
                echo "          -bg colorname"
726
 
                echo "          -fg colorname"
727
 
                echo "          -fn fontname"
728
 
                echo "          -fb bold fontname"
729
 
                echo "          -host [crusher.saltmine.com] [earth] [192.168.7.7]"
730
 
                echo ""
731
 
                echo " Example: \"vmsterm -80 -fg white -bg black -fn 9x15 -fb 9x15b -host earth\""
732
 
                echo "          Starts a VMS session with an 80 column terminal"
733
 
                echo "          with a black background, white foreground, a normal"
734
 
                echo "          font of 9x15 and a bold font of 9x15b, and connects"
735
 
                echo "          to the node 'earth'"
736
 
                echo ""
737
 
                echo " Example: \"vmsterm -host earth\""
738
 
                echo "          Starts a VMS session with default terminal settings "
739
 
                echo ""
740
 
                echo " Example: \"vmsterm -help\""
741
 
                echo "          Displays vmsterm options "
742
 
                echo
743
 
                exit 1
744
 
        }
745
 
 
746
 
        # Default to a black foreground with a white background.
747
 
        # Use the 9x15 and 9x15bold fonts. Connect to 192.168.3.3 by default.
748
 
        #
749
 
        FG=black
750
 
        BG=white
751
 
        HOST=192.168.3.3
752
 
        FONT=9x15
753
 
        BFONT=9x15bold
754
 
        COLS=80
755
 
 
756
 
        # Parse the command line arguments
757
 
        #
758
 
        while [ $# != 0 ];
759
 
        do
760
 
                case $1 in
761
 
                        -80)    COLS=80
762
 
                                FONT=spc12x24c
763
 
                                BFONT=spc12x24b
764
 
                                shift
765
 
                                ;;
766
 
                        -132)   COLS=132
767
 
                                FONT=9x15
768
 
                                BFONT=9x15b
769
 
                                shift
770
 
                                ;;
771
 
                        -fg)    shift
772
 
                                FG=$1
773
 
                                shift;;
774
 
                        -bg)    shift
775
 
                                BG=$1
776
 
                                shift;;
777
 
                        -fn)    shift
778
 
                                FONT=$1
779
 
                                shift;;
780
 
                        -fb)    shift
781
 
                                BFONT=$1
782
 
                                shift;;
783
 
                        -host)  shift
784
 
                                HOST=$1
785
 
                                shift;;
786
 
                        -help)  Usage;;
787
 
                        *)      Usage;;
788
 
                esac
789
 
        done
790
 
 
791
 
        xterm   -title "VMSTERM" -sb -sl 1000 -geo ${COLS}x24 -fg ${FG} -bg ${BG} \
792
 
                -cr blue -fn ${FONT} -fb ${BFONT} -xrm \
793
 
                'XTerm*VT100.translations: #override \n \
794
 
                ~Shift  &lt;Key&gt;F1:  string(0x1b)    string("OP") \n \
795
 
                ~Shift  &lt;Key&gt;F2:  string(0x1b)    string("OQ") \n \
796
 
                ~Shift  &lt;Key&gt;F3:  string(0x1b)    string("OR") \n \
797
 
                ~Shift  &lt;Key&gt;F4:  string(0x1b)    string("OS") \n \
798
 
                ~Shift  &lt;Key&gt;F5:  string("Break") \n \
799
 
                ~Shift  &lt;Key&gt;F6:  string(0x1b)    string("[17~") \n \
800
 
                ~Shift  &lt;Key&gt;F7:  string(0x1b)    string("[18~") \n \
801
 
                ~Shift  &lt;Key&gt;F8:  string(0x1b)    string("[19~") \n \
802
 
                ~Shift  &lt;Key&gt;F9:  string(0x1b)    string("[20~") \n \
803
 
                ~Shift  &lt;Key&gt;F10: string(0x1b)    string("[21~") \n \
804
 
                ~Shift  &lt;Key&gt;F11: string(0x1b)    string("[23~") \n \
805
 
                ~Shift  &lt;Key&gt;F12: string(0x1b)    string("[24~") \n \
806
 
                Shift   &lt;Key&gt;F1:  string(0x1b)    string("[23~") \n \
807
 
                Shift   &lt;Key&gt;F2:  string(0x1b)    string("[24~") \n \
808
 
                Shift   &lt;Key&gt;F3:  string(0x1b)    string("[25~") \n \
809
 
                Shift   &lt;Key&gt;F4:  string(0x1b)    string("[26~") \n \
810
 
                Shift   &lt;Key&gt;F5:  string(0x1b)    string("[28~") \n \
811
 
                Shift   &lt;Key&gt;F6:  string(0x1b)    string("[29~") \n \
812
 
                Shift   &lt;Key&gt;F7:  string(0x1b)    string("[31~") \n \
813
 
                Shift   &lt;Key&gt;F8:  string(0x1b)    string("[32~") \n \
814
 
                Shift   &lt;Key&gt;F9:  string(0x1b)    string("[33~") \n \
815
 
                Shift   &lt;Key&gt;F10: string(0x1b)    string("[34~") \n \
816
 
                Shift   &lt;Key&gt;F11: string(0x1b)    string("[28~") \n \
817
 
                Shift   &lt;Key&gt;F12: string(0x1b)    string("[29~") \n \
818
 
                        &lt;Key&gt;Print:       string(0x1b)    string("[28~") \n \
819
 
                        &lt;Key&gt;Cancel:      string(0x1b)    string("[29~") \n \
820
 
                        &lt;Key&gt;Pause:       string(0x1b)    string("Om") \n \
821
 
                        &lt;Key&gt;Insert:      string(0x1b)    string("[2~") \n \
822
 
                        &lt;Key&gt;Delete:      string(0x1b)    string("[3~") \n \
823
 
                        &lt;Key&gt;Home:        string(0x1b)    string("[1~") \n \
824
 
                        &lt;Key&gt;End:         string(0x1b)    string("[4~") \n \
825
 
                        &lt;Key&gt;Prior:       string(0x1b)    string("[5~") \n \
826
 
                        &lt;Key&gt;Next:        string(0x1b)    string("[6~") \n \
827
 
                        &lt;Key&gt;BackSpace:   string(0x7f)    \n \
828
 
                        &lt;Key&gt;Num_Lock:    string(0x1b)    string("OP") \n \
829
 
                        &lt;Key&gt;KP_Divide:   string(0x1b)    string("OQ") \n \
830
 
                        &lt;Key&gt;KP_Multiply: string(0x1b)    string("OR") \n \
831
 
                        &lt;Key&gt;KP_Subtract: string(0x1b)    string("OS") \n \
832
 
                        &lt;Key&gt;KP_Add:      string(0x1b)    string("Ol") \n \
833
 
                        &lt;Key&gt;KP_Enter:    string(0x1b)    string("OM") \n \
834
 
                        &lt;Key&gt;KP_Decimal: string(0x1b)     string("On") \n \
835
 
                        &lt;Key&gt;KP_0:        string(0x1b)    string("Op") \n \
836
 
                        &lt;Key&gt;KP_1:        string(0x1b)    string("Oq") \n \
837
 
                        &lt;Key&gt;KP_2:        string(0x1b)    string("Or") \n \
838
 
                        &lt;Key&gt;KP_3:        string(0x1b)    string("Os") \n \
839
 
                        &lt;Key&gt;KP_4:        string(0x1b)    string("Ot") \n \
840
 
                        &lt;Key&gt;KP_5:        string(0x1b)    string("Ou") \n \
841
 
                        &lt;Key&gt;KP_6:        string(0x1b)    string("Ov") \n \
842
 
                        &lt;Key&gt;KP_7:        string(0x1b)    string("Ow") \n \
843
 
                        &lt;Key&gt;KP_8:        string(0x1b)    string("Ox") \n \
844
 
                        &lt;Key&gt;KP_9:        string(0x1b)    string("Oy") \n \
845
 
                ~Shift  &lt;Key&gt;Up:          string(0x1b)    string("[A") \n \
846
 
                Shift   &lt;Key&gt;Up:          scroll-back(1,lines) \n \
847
 
                ~Shift  &lt;Key&gt;Down:        string(0x1b)    string("[B") \n \
848
 
                Shift   &lt;Key&gt;Down:        scroll-forw(1,lines) \n \
849
 
                        &lt;Key&gt;Right:       string(0x1b)    string("[C") \n \
850
 
                        &lt;Key&gt;Left:        string(0x1b)    string("[D")' \
851
 
                -e telnet $HOST
852
 
</code></pre>
 
893
<p>
 
894
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
895
<font color="#800000">#!/bin/sh</font><br>
 
896
<font color="#800000">#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;vmsterm</font><br>
 
897
<font color="#800000">#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;from&nbsp;an&nbsp;original&nbsp;script&nbsp;by&nbsp;Bob&nbsp;Ess</font><br>
 
898
<font color="#800000">#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;key&nbsp;translations&nbsp;by&nbsp;Erik&nbsp;Ahlefeldt</font><br>
 
899
<font color="#800000">#</font><br>
 
900
<font color="#800000">#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Script&nbsp;file&nbsp;using&nbsp;Xterm&nbsp;and&nbsp;telnet&nbsp;to&nbsp;connect&nbsp;to&nbsp;a&nbsp;VMS&nbsp;host</font><br>
 
901
<font color="#800000">#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;and&nbsp;give&nbsp;a&nbsp;decent&nbsp;vt220&nbsp;emulation.</font><br>
 
902
<font color="#800000">#</font><br>
 
903
<font color="#800000">#&nbsp;Usage&nbsp;statement</font><br>
 
904
Usage()<strong><font color="#800000">{</font></strong><br>
 
905
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong><br>
 
906
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;Usage&nbsp;&nbsp;:&nbsp;vmsterm&nbsp;-options"</font><br>
 
907
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong><br>
 
908
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;Options:&nbsp;-80&nbsp;&nbsp;&nbsp;for&nbsp;80&nbsp;column&nbsp;terminal"</font><br>
 
909
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-132&nbsp;&nbsp;for&nbsp;132&nbsp;column&nbsp;terminal"</font><br>
 
910
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-bg&nbsp;colorname"</font><br>
 
911
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fg&nbsp;colorname"</font><br>
 
912
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fn&nbsp;fontname"</font><br>
 
913
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fb&nbsp;bold&nbsp;fontname"</font><br>
 
914
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-host&nbsp;[crusher.saltmine.com]&nbsp;[earth]&nbsp;[192.168.7.7]"</font><br>
 
915
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">""</font><br>
 
916
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;Example:&nbsp;</font><strong><font color="#800000">\</font></strong><font color="#800080">"vmsterm&nbsp;-80&nbsp;-fg&nbsp;white&nbsp;-bg&nbsp;black&nbsp;-fn&nbsp;9x15&nbsp;-fb&nbsp;9x15b&nbsp;-host&nbsp;earth</font><strong><font color="#800000">\</font></strong><font color="#800080">""</font><br>
 
917
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Starts&nbsp;a&nbsp;VMS&nbsp;session&nbsp;with&nbsp;an&nbsp;80&nbsp;column&nbsp;terminal"</font><br>
 
918
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;with&nbsp;a&nbsp;black&nbsp;background,&nbsp;white&nbsp;foreground,&nbsp;a&nbsp;normal"</font><br>
 
919
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;font&nbsp;of&nbsp;9x15&nbsp;and&nbsp;a&nbsp;bold&nbsp;font&nbsp;of&nbsp;9x15b,&nbsp;and&nbsp;connects"</font><br>
 
920
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;to&nbsp;the&nbsp;node&nbsp;'earth'"</font><br>
 
921
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">""</font><br>
 
922
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;Example:&nbsp;</font><strong><font color="#800000">\</font></strong><font color="#800080">"vmsterm&nbsp;-host&nbsp;earth</font><strong><font color="#800000">\</font></strong><font color="#800080">""</font><br>
 
923
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Starts&nbsp;a&nbsp;VMS&nbsp;session&nbsp;with&nbsp;default&nbsp;terminal&nbsp;settings&nbsp;"</font><br>
 
924
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">""</font><br>
 
925
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;Example:&nbsp;</font><strong><font color="#800000">\</font></strong><font color="#800080">"vmsterm&nbsp;-help</font><strong><font color="#800000">\</font></strong><font color="#800080">""</font><br>
 
926
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Displays&nbsp;vmsterm&nbsp;options&nbsp;"</font><br>
 
927
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong><br>
 
928
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">exit</font></strong>&nbsp;<strong><font color="#008080">1</font></strong><br>
 
929
<strong><font color="#800000">}</font></strong><br>
 
930
&nbsp;<br>
 
931
<font color="#800000">#&nbsp;Default&nbsp;to&nbsp;a&nbsp;black&nbsp;foreground&nbsp;with&nbsp;a&nbsp;white&nbsp;background.</font><br>
 
932
<font color="#800000">#&nbsp;Use&nbsp;the&nbsp;9x15&nbsp;and&nbsp;9x15bold&nbsp;fonts.&nbsp;Connect&nbsp;to&nbsp;192.168.3.3&nbsp;by&nbsp;default.</font><br>
 
933
<font color="#800000">#</font><br>
 
934
<font color="#008080">FG</font>=black<br>
 
935
<font color="#008080">BG</font>=white<br>
 
936
<font color="#008080">HOST</font>=192.168.3.3<br>
 
937
<font color="#008080">FONT</font>=<strong><font color="#008080">9</font></strong>x15<br>
 
938
<font color="#008080">BFONT</font>=<strong><font color="#008080">9</font></strong>x15bold<br>
 
939
<font color="#008080">COLS</font>=<strong><font color="#008080">80</font></strong><br>
 
940
&nbsp;<br>
 
941
<font color="#800000">#&nbsp;Parse&nbsp;the&nbsp;command&nbsp;line&nbsp;arguments</font><br>
 
942
<font color="#800000">#</font><br>
 
943
<strong><font color="#000080">while</font></strong>&nbsp;[&nbsp;<font color="#008080">$#</font>&nbsp;!=&nbsp;<strong><font color="#008080">0</font></strong>&nbsp;];<br>
 
944
<strong><font color="#000080">do</font></strong><br>
 
945
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">case</font></strong>&nbsp;<font color="#008080">$1</font>&nbsp;<strong><font color="#000080">in</font></strong><br>
 
946
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#008080">-80</font></strong>)&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">COLS</font>=<strong><font color="#008080">80</font></strong><br>
 
947
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">FONT</font>=spc12x24c<br>
 
948
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">BFONT</font>=spc12x24b<br>
 
949
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
950
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<br>
 
951
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#008080">-132</font></strong>)&nbsp;&nbsp;&nbsp;<font color="#008080">COLS</font>=<strong><font color="#008080">132</font></strong><br>
 
952
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">FONT</font>=<strong><font color="#008080">9</font></strong>x15<br>
 
953
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">BFONT</font>=<strong><font color="#008080">9</font></strong>x15b<br>
 
954
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
955
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<br>
 
956
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fg)&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
957
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">FG</font>=<font color="#008080">$1</font><br>
 
958
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong>;;<br>
 
959
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-bg)&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
960
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">BG</font>=<font color="#008080">$1</font><br>
 
961
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong>;;<br>
 
962
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fn)&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
963
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">FONT</font>=<font color="#008080">$1</font><br>
 
964
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong>;;<br>
 
965
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-fb)&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
966
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">BFONT</font>=<font color="#008080">$1</font><br>
 
967
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong>;;<br>
 
968
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-host)&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong><br>
 
969
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">HOST</font>=<font color="#008080">$1</font><br>
 
970
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">shift</font></strong>;;<br>
 
971
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-help)&nbsp;&nbsp;Usage;;<br>
 
972
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Usage;;<br>
 
973
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">esac</font></strong><br>
 
974
<strong><font color="#000080">done</font></strong><br>
 
975
&nbsp;<br>
 
976
xterm&nbsp;&nbsp;&nbsp;-title&nbsp;<font color="#800080">"VMSTERM"</font>&nbsp;-sb&nbsp;-sl&nbsp;<strong><font color="#008080">1000</font></strong>&nbsp;-geo&nbsp;<font color="#008080">${COLS}</font>x24&nbsp;-fg&nbsp;<font color="#008080">${FG}</font>&nbsp;-bg&nbsp;<font color="#008080">${BG}</font>&nbsp;\<br>
 
977
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-cr&nbsp;blue&nbsp;-fn&nbsp;<font color="#008080">${FONT}</font>&nbsp;-fb&nbsp;<font color="#008080">${BFONT}</font>&nbsp;-xrm&nbsp;\<br>
 
978
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800080">'XTerm*VT100.translations:&nbsp;#override&nbsp;\n&nbsp;\<br>
 
979
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("OP")&nbsp;\n&nbsp;\<br>
 
980
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("OQ")&nbsp;\n&nbsp;\<br>
 
981
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("OR")&nbsp;\n&nbsp;\<br>
 
982
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F4:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("OS")&nbsp;\n&nbsp;\<br>
 
983
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F5:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string("Break")&nbsp;\n&nbsp;\<br>
 
984
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F6:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[17~")&nbsp;\n&nbsp;\<br>
 
985
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F7:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[18~")&nbsp;\n&nbsp;\<br>
 
986
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F8:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[19~")&nbsp;\n&nbsp;\<br>
 
987
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F9:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[20~")&nbsp;\n&nbsp;\<br>
 
988
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F10:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[21~")&nbsp;\n&nbsp;\<br>
 
989
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F11:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[23~")&nbsp;\n&nbsp;\<br>
 
990
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;F12:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[24~")&nbsp;\n&nbsp;\<br>
 
991
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[23~")&nbsp;\n&nbsp;\<br>
 
992
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[24~")&nbsp;\n&nbsp;\<br>
 
993
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[25~")&nbsp;\n&nbsp;\<br>
 
994
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F4:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[26~")&nbsp;\n&nbsp;\<br>
 
995
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F5:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[28~")&nbsp;\n&nbsp;\<br>
 
996
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F6:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[29~")&nbsp;\n&nbsp;\<br>
 
997
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F7:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[31~")&nbsp;\n&nbsp;\<br>
 
998
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F8:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[32~")&nbsp;\n&nbsp;\<br>
 
999
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F9:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[33~")&nbsp;\n&nbsp;\<br>
 
1000
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F10:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[34~")&nbsp;\n&nbsp;\<br>
 
1001
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F11:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[28~")&nbsp;\n&nbsp;\<br>
 
1002
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;F12:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[29~")&nbsp;\n&nbsp;\<br>
 
1003
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Print:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[28~")&nbsp;\n&nbsp;\<br>
 
1004
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Cancel:&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[29~")&nbsp;\n&nbsp;\<br>
 
1005
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Pause:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Om")&nbsp;\n&nbsp;\<br>
 
1006
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Insert:&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[2~")&nbsp;\n&nbsp;\<br>
 
1007
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Delete:&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[3~")&nbsp;\n&nbsp;\<br>
 
1008
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Home:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[1~")&nbsp;\n&nbsp;\<br>
 
1009
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;End:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[4~")&nbsp;\n&nbsp;\<br>
 
1010
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Prior:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[5~")&nbsp;\n&nbsp;\<br>
 
1011
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Next:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[6~")&nbsp;\n&nbsp;\<br>
 
1012
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;BackSpace:&nbsp;string(0x7f)&nbsp;&nbsp;&nbsp;&nbsp;\n&nbsp;\<br>
 
1013
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Num_Lock:&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("OP")&nbsp;\n&nbsp;\<br>
 
1014
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Divide:&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("OQ")&nbsp;\n&nbsp;\<br>
 
1015
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Multiply:&nbsp;string(0x1b)&nbsp;&nbsp;string("OR")&nbsp;\n&nbsp;\<br>
 
1016
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Subtract:&nbsp;string(0x1b)&nbsp;&nbsp;string("OS")&nbsp;\n&nbsp;\<br>
 
1017
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Add:&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Ol")&nbsp;\n&nbsp;\<br>
 
1018
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Enter:&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("OM")&nbsp;\n&nbsp;\<br>
 
1019
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_Decimal:&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;string("On")&nbsp;\n&nbsp;\<br>
 
1020
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_0:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Op")&nbsp;\n&nbsp;\<br>
 
1021
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Oq")&nbsp;\n&nbsp;\<br>
 
1022
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Or")&nbsp;\n&nbsp;\<br>
 
1023
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Os")&nbsp;\n&nbsp;\<br>
 
1024
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_4:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Ot")&nbsp;\n&nbsp;\<br>
 
1025
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_5:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Ou")&nbsp;\n&nbsp;\<br>
 
1026
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_6:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Ov")&nbsp;\n&nbsp;\<br>
 
1027
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_7:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Ow")&nbsp;\n&nbsp;\<br>
 
1028
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_8:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Ox")&nbsp;\n&nbsp;\<br>
 
1029
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;KP_9:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("Oy")&nbsp;\n&nbsp;\<br>
 
1030
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;Up:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[A")&nbsp;\n&nbsp;\<br>
 
1031
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;Up:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scroll-back(1,lines)&nbsp;\n&nbsp;\<br>
 
1032
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;&nbsp;&lt;Key&gt;Down:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[B")&nbsp;\n&nbsp;\<br>
 
1033
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;&nbsp;&nbsp;&lt;Key&gt;Down:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scroll-forw(1,lines)&nbsp;\n&nbsp;\<br>
 
1034
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Right:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[C")&nbsp;\n&nbsp;\<br>
 
1035
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Left:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string(0x1b)&nbsp;&nbsp;&nbsp;&nbsp;string("[D")'</font>&nbsp;\<br>
 
1036
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-e&nbsp;telnet&nbsp;<font color="#008080">$HOST</font><br>
 
1037
<!--atr2html}}--></p>
853
1038
 
854
1039
<h3><A NAME="how2_title">How do I set the title?</A></h3>
855
1040
The control sequences for doing this
861
1046
Here is one that I have seen,
862
1047
from Roy Wright &lt;nobody@roystoy.dseg.ti.com&gt;.
863
1048
In your /etc/profile after:
864
 
<PRE><code>
865
 
        if [ "$SHELL" = "/bin/pdksh" -o "$SHELL" = "/bin/ksh" ]; then
866
 
                PS1="! $ "
867
 
        elif [ "$SHELL" = "/bin/zsh" ]; then
868
 
                PS1="%m:%~%# "
869
 
        elif [ "$SHELL" = "/bin/ash" ]; then
870
 
                PS1="$ "
871
 
        else
872
 
                PS1='\u@\h:\w\$ '
873
 
        fi
874
 
</code></PRE>
875
 
<P>
 
1049
<p>
 
1050
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1051
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">if</font></strong>&nbsp;[&nbsp;<font color="#800080">"</font><font color="#008080">$SHELL</font><font color="#800080">"</font>&nbsp;=&nbsp;<font color="#800080">"/bin/pdksh"</font>&nbsp;-o&nbsp;<font color="#800080">"</font><font color="#008080">$SHELL</font><font color="#800080">"</font>&nbsp;=&nbsp;<font color="#800080">"/bin/ksh"</font>&nbsp;];&nbsp;<strong><font color="#000080">then</font></strong><br>
 
1052
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">PS1</font>=<font color="#800080">"!&nbsp;$&nbsp;"</font><br>
 
1053
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">elif</font></strong>&nbsp;[&nbsp;<font color="#800080">"</font><font color="#008080">$SHELL</font><font color="#800080">"</font>&nbsp;=&nbsp;<font color="#800080">"/bin/zsh"</font>&nbsp;];&nbsp;<strong><font color="#000080">then</font></strong><br>
 
1054
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">PS1</font>=<font color="#800080">"%m:%~%#&nbsp;"</font><br>
 
1055
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">elif</font></strong>&nbsp;[&nbsp;<font color="#800080">"</font><font color="#008080">$SHELL</font><font color="#800080">"</font>&nbsp;=&nbsp;<font color="#800080">"/bin/ash"</font>&nbsp;];&nbsp;<strong><font color="#000080">then</font></strong><br>
 
1056
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">PS1</font>=<font color="#800080">"$&nbsp;"</font><br>
 
1057
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">else</font></strong><br>
 
1058
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">PS1</font>=<font color="#800080">'\u@\h:\w\$&nbsp;'</font><br>
 
1059
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">fi</font></strong><br>
 
1060
<!--atr2html}}--></p>
 
1061
<p>
876
1062
add:
877
 
<PRE><code>
878
 
        if [ "$TERM" = "xterm" ]; then
879
 
                PS1="\033]2;\u@\h:\w\007bash$ "
880
 
        fi
881
 
</code></PRE>
882
 
<P>
 
1063
<p>
 
1064
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1065
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">if</font></strong>&nbsp;[&nbsp;<font color="#800080">"</font><font color="#008080">$TERM</font><font color="#800080">"</font>&nbsp;=&nbsp;<font color="#800080">"xterm"</font>&nbsp;];&nbsp;<strong><font color="#000080">then</font></strong><br>
 
1066
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">PS1</font>=<font color="#800080">"</font><strong><font color="#800000">\</font></strong><font color="#800080">033]2;</font><strong><font color="#800000">\</font></strong><font color="#800080">u@</font><strong><font color="#800000">\</font></strong><font color="#800080">h:</font><strong><font color="#800000">\</font></strong><font color="#800080">w</font><strong><font color="#800000">\</font></strong><font color="#800080">007bash$&nbsp;"</font><br>
 
1067
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">fi</font></strong><br>
 
1068
<!--atr2html}}--></p>
 
1069
<p>
883
1070
The terminator "\007" is a problem area.  Xterm historically uses this
884
1071
character, though it is non-ANSI.  The "correct" character should be
885
1072
a "\233" string terminator, or "\033\\", which is the 7-bit equivalent.
886
 
XFree86 xterm recognizes either (the "\007" or string terminator);
 
1073
Modern xterm recognizes either (the "\007" or string terminator);
887
1074
waiting for the first of these.
888
1075
<P>
889
1076
You may have resource or environment problems that prevent you from
900
1087
<P>
901
1088
On a related note, some people want to know how to read the title
902
1089
from an xterm.
903
 
This works for XFree86 xterm and dtterm, but not for other variations:
904
 
<PRE><code>
905
 
        #!/bin/ksh
906
 
        # Echo the current X term title bar to standard output.
907
 
        # Written by Icarus Sparry &lt;icarus@bath.ac.uk&gt; 11 Apr 1997
908
 
        #
909
 
        exec &lt;/dev/tty
910
 
        old=$(stty -g)
911
 
        stty raw -echo min 0  time ${1-10}
912
 
        print "\033[21t\c" &gt; /dev/tty
913
 
        IFS='' read -r a
914
 
        stty $old
915
 
        b=${a#???}
916
 
        print -R "${b%??}"
917
 
</code></PRE>
 
1090
This works for modern xterm and dtterm, but not for other variations:
 
1091
<p>
 
1092
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1093
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800000">#!/bin/ksh</font><br>
 
1094
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800000">#&nbsp;Echo&nbsp;the&nbsp;current&nbsp;X&nbsp;term&nbsp;title&nbsp;bar&nbsp;to&nbsp;standard&nbsp;output.</font><br>
 
1095
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800000">#&nbsp;Written&nbsp;by&nbsp;Icarus&nbsp;Sparry&nbsp;&lt;icarus@bath.ac.uk&gt;&nbsp;11&nbsp;Apr&nbsp;1997</font><br>
 
1096
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800000">#</font><br>
 
1097
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">exec</font></strong>&nbsp;&lt;/dev/tty<br>
 
1098
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">old</font>=<strong><font color="#800000">$(</font></strong>stty&nbsp;-g<strong><font color="#800000">)</font></strong><br>
 
1099
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stty&nbsp;raw&nbsp;-echo&nbsp;min&nbsp;<strong><font color="#008080">0</font></strong>&nbsp;&nbsp;<strong><font color="#000080">time</font></strong>&nbsp;<font color="#008080">${1</font><strong><font color="#800000">-</font></strong>10<font color="#008080">}</font><br>
 
1100
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">print</font></strong>&nbsp;<font color="#800080">"</font><strong><font color="#800000">\</font></strong><font color="#800080">033[21t</font><strong><font color="#800000">\</font></strong><font color="#800080">c"</font>&nbsp;&gt;&nbsp;/dev/tty<br>
 
1101
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">IFS</font>=<font color="#800080">''</font>&nbsp;<strong><font color="#000080">read</font></strong>&nbsp;-r&nbsp;a<br>
 
1102
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stty&nbsp;<font color="#008080">$old</font><br>
 
1103
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#008080">b</font>=<font color="#008080">${a</font><strong><font color="#800000">#</font></strong>???<font color="#008080">}</font><br>
 
1104
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">print</font></strong>&nbsp;-R&nbsp;<font color="#800080">"</font><font color="#008080">${b</font><strong><font color="#800000">%</font></strong>??<font color="#008080">}</font><font color="#800080">"</font><br>
 
1105
<!--atr2html}}--></p>
 
1106
<p>
918
1107
But it is possible to avoid escape sequences altogether (from
919
1108
Hemant Shah &lt;shah@typhoon.xnet.com&gt;):
920
1109
<PRE><code>
923
1112
        current_title=$(xprop -id $WINDOWID | grep WM_NAME | cut -d= -f2)
924
1113
</code></PRE>
925
1114
Here's another source of information:
926
 
<a href="http://cns.georgetown.edu/~ric/howto/Xterm-Title/">Xterm-Title HowTo</a>
 
1115
<a href="http://web.archive.org/web/*/http%3A//cns.georgetown.edu/~ric/howto/Xterm-Title/">Xterm-Title HowTo</a>
927
1116
 
928
1117
<h3><A NAME="how2_blink">How do I make the cursor blink?</A></h3>
929
1118
Standard xterm does not implement a blinking cursor.
930
1119
Some of the variations do:
931
1120
dtterm,
932
1121
GNOME Terminal,
933
 
and XFree86 xterm
 
1122
and modern xterm
934
1123
(from mid 1999, <a href="xterm.log.html#xterm_107">patch 107</a>).
935
1124
 
936
1125
<h2><A NAME="frequent_problems">Frequent problems</A></h2>
996
1185
defined for these positions.  So they display as blanks.
997
1186
Use <em>xfd</em> to display the font.
998
1187
<p>
999
 
XFree86 xterm can form its own line-drawing characters
 
1188
Modern xterm can form its own line-drawing characters
1000
1189
(see <a href="xterm.log.html#xterm_90">patch 90</a>, for example).
1001
1190
It does not draw all of the graphic characters, only those that
1002
1191
may be done with straight lines.  But those are the most used,
1027
1216
In your X server configuration file, that can be fixed by disabling
1028
1217
the feature, e.g.,
1029
1218
by appending ":unscaled" to the path:
1030
 
<pre><code>
1031
 
        FontPath        "/usr/lib/X11/fonts/100dpi/:unscaled"
1032
 
        FontPath        "/usr/lib/X11/fonts/75dpi/:unscaled"
1033
 
        FontPath        "/usr/lib/X11/fonts/misc/:unscaled"
1034
 
</code></pre>
 
1219
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1220
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FontPath&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"<font color="#800080">/usr/lib/X11/fonts/100dpi/:unscaled</font>"<br>
 
1221
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FontPath&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"<font color="#800080">/usr/lib/X11/fonts/75dpi/:unscaled</font>"<br>
 
1222
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FontPath&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"<font color="#800080">/usr/lib/X11/fonts/misc/:unscaled</font>"<br>
 
1223
<!--atr2html}}--></p>
 
1224
<p>
 
1225
You can suppress xterm's overstriking for bold fonts
 
1226
using the <code>alwaysBoldMode</code>
 
1227
and related resources.
 
1228
However, rendering ugly bold fonts is a "feature" of the font server.
 
1229
In particular, the TrueType interface provides less ability to the
 
1230
client for determining if a particular font supports a bold form.
1035
1231
 
1036
1232
<h3><A NAME="little_dot">I see little dots on the screen</A></h3>
1037
1233
Well, I do.
1046
1242
area that another character occupies. When erasing a bold character from
1047
1243
the screen, xterm does not erase the extra pixel.
1048
1244
 
1049
 
This is corrected in XFree86 xterm,
 
1245
This is corrected in modern xterm,
1050
1246
subject to the available fonts
1051
1247
(from late 1998, <a href="xterm.log.html#xterm_85">patch 85</a>).
1052
1248
For each font, it asks the font server for a corresponding bold font.
1069
1265
I use for testing this configuration.
1070
1266
 
1071
1267
<h3><A NAME="utf8_fonts">I see boxes instead of characters in uxterm</A></h3>
1072
 
xterm may show boxes instead of characters if the font that you have
 
1268
Xterm may show boxes instead of characters if the font that you have
1073
1269
selected does not contain those characters.
1074
1270
Normally you can fix most of that using the UTF-8 feature, with <code>uxterm</code>.
1075
1271
However, your X resource settings may be the source of the problem.
1079
1275
When you give a wildcard, the X resource matches any number of levels in
1080
1276
the widget hierarchy.
1081
1277
<p>
1082
 
xterm has more than one widget matching "font" at different levels of the
 
1278
Xterm has more than one widget matching "font" at different levels of the
1083
1279
hierarchy.
1084
1280
There are the popup menus, and there are the fonts used for <code>uxterm</code>.
1085
1281
The latter is where an overbroad pattern can cause xterm to use a different
1086
1282
font than you expect.
1087
1283
<p>
1088
1284
Suppose your resource setting includes this pattern
1089
 
<pre>
1090
 
*VT100*font: fixed
1091
 
</pre>
 
1285
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1286
*<strong><font color="#000080">VT100</font></strong>*<font color="#008080">font</font>:<font color="#800080">&nbsp;fixed</font><br>
 
1287
<!--atr2html}}--></p>
1092
1288
It could be interpreted as this:
1093
 
<pre>
1094
 
*VT100.font: fixed
1095
 
*VT100.utf8Fonts.font: fixed
1096
 
</pre>
1097
 
xterm uses the <code>utf8Fonts</code> subresources to provide
 
1289
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1290
*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">font</font>:<font color="#800080">&nbsp;fixed</font><br>
 
1291
*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">utf8Fonts</font>.<font color="#008080">font</font>:<font color="#800080">&nbsp;fixed</font><br>
 
1292
<!--atr2html}}--></p>
 
1293
Xterm uses the <code>utf8Fonts</code> subresources to provide
1098
1294
runtime-switchable fonts between IS0-8859-1 (Latin-1) and ISO-10646 (Unicode).
1099
1295
Modifying the Unicode font to "fixed" will make most of the characters
1100
1296
unavailable (i.e., shown as boxes).
1101
1297
If instead your resource looks like
1102
 
<pre>
1103
 
*VT100.font: fixed
1104
 
</pre>
 
1298
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1299
*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">font</font>:<font color="#800080">&nbsp;fixed</font><br>
 
1300
<!--atr2html}}--></p>
1105
1301
it would be unambiguous, and not modify the <code>utf8Fonts</code> value.
1106
1302
 
1107
1303
<h3><A NAME="slow_menus">The first popup menu is very slow</A></h3>
1113
1309
There is a workaround using a resource setting for xterm.
1114
1310
 
1115
1311
<h4>Details</h4>
1116
 
xterm uses the Athena (Xaw) widgets to display popup menus.
 
1312
Xterm uses the Athena (Xaw) widgets to display popup menus.
1117
1313
In the normal case, those are initialized one-by-one as they are first used.
1118
1314
If you have configured xterm to use its toolbar configuration,
1119
1315
they are all initialized on startup.
1181
1377
It is unlikely that you need Chinese fonts for that.
1182
1378
 
1183
1379
<h4>Solution</h4>
1184
 
xterm's <code>menuLocale</code> resource can be set to an explicit
 
1380
Xterm's <code>menuLocale</code> resource can be set to an explicit
1185
1381
value, e.g., "C" to override the current locale as seen by this
1186
1382
initialization debacle.
1187
1383
 
1191
1387
 
1192
1388
<h3><A NAME="no_color">My terminal doesn't recognize color</A></h3>
1193
1389
First, ensure that you have set up xterm to render color.
1194
 
The XFree86 xterm renders color only if you have set resources
 
1390
Modern xterm renders color only if you have set resources
1195
1391
to do this; the default behavior is monochrome to maintain compatibility
1196
1392
with older applications.
1197
1393
The manual page describes these resources.
1271
1467
</code></pre>
1272
1468
as a guide.
1273
1469
The relevant section of the app-default file looks like
1274
 
<pre><code>
1275
 
        *VT100.translations:    #override \
1276
 
                @Num_Lock&lt;Key&gt;KP_0: string(0)\n\
1277
 
                @Num_Lock&lt;Key&gt;KP_1: string(1)\n\
1278
 
                @Num_Lock&lt;Key&gt;KP_2: string(2)\n\
1279
 
                @Num_Lock&lt;Key&gt;KP_3: string(3)\n\
1280
 
                @Num_Lock&lt;Key&gt;KP_4: string(4)\n\
1281
 
                @Num_Lock&lt;Key&gt;KP_5: string(5)\n\
1282
 
                @Num_Lock&lt;Key&gt;KP_6: string(6)\n\
1283
 
                @Num_Lock&lt;Key&gt;KP_7: string(7)\n\
1284
 
                @Num_Lock&lt;Key&gt;KP_8: string(8)\n\
1285
 
                @Num_Lock&lt;Key&gt;KP_9: string(9)\n\
1286
 
                @Num_Lock&lt;Key&gt;KP_Add: string(+)\n\
1287
 
                @Num_Lock&lt;Key&gt;KP_Decimal: string(.)\n\
1288
 
                @Num_Lock&lt;Key&gt;KP_Divide: string(/)\n\
1289
 
                @Num_Lock&lt;Key&gt;KP_Enter: string(\015)\n\
1290
 
                @Num_Lock&lt;Key&gt;KP_Equal: string(=)\n\
1291
 
                @Num_Lock&lt;Key&gt;KP_Multiply: string(*)\n\
1292
 
                @Num_Lock&lt;Key&gt;KP_Subtract: string(-)\n\
1293
 
                &lt;Key&gt;Prior:scroll-back(1,page)\n\
1294
 
                &lt;Key&gt;Next:scroll-forw(1,page)\n\
1295
 
                &lt;Key&gt;F16: start-extend() select-end(PRIMARY, CUT_BUFFER0, CLIPBOARD) \n\
1296
 
                &lt;Key&gt;F18: insert-selection(PRIMARY, CLIPBOARD) \n\
1297
 
                &lt;Key&gt;F27: scroll-back(100,page) \n\
1298
 
                &lt;Key&gt;R13: scroll-forw(100,page) \n\
1299
 
                &lt;Key&gt;Home: scroll-back(100,page) \n\
1300
 
                &lt;Key&gt;End: scroll-forw(100,page) \n
1301
 
</code></pre>
 
1470
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1471
*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">translations</font>:<font color="#800080">&nbsp;&nbsp;&nbsp;&nbsp;#override&nbsp;\<br>
 
1472
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_0:&nbsp;string(</font><strong><font color="#008080">0</font></strong><font color="#800080">)\n\<br>
 
1473
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_1:&nbsp;string(</font><strong><font color="#008080">1</font></strong><font color="#800080">)\n\<br>
 
1474
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_2:&nbsp;string(</font><strong><font color="#008080">2</font></strong><font color="#800080">)\n\<br>
 
1475
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_3:&nbsp;string(</font><strong><font color="#008080">3</font></strong><font color="#800080">)\n\<br>
 
1476
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_4:&nbsp;string(</font><strong><font color="#008080">4</font></strong><font color="#800080">)\n\<br>
 
1477
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_5:&nbsp;string(</font><strong><font color="#008080">5</font></strong><font color="#800080">)\n\<br>
 
1478
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_6:&nbsp;string(</font><strong><font color="#008080">6</font></strong><font color="#800080">)\n\<br>
 
1479
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_7:&nbsp;string(</font><strong><font color="#008080">7</font></strong><font color="#800080">)\n\<br>
 
1480
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_8:&nbsp;string(</font><strong><font color="#008080">8</font></strong><font color="#800080">)\n\<br>
 
1481
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_9:&nbsp;string(</font><strong><font color="#008080">9</font></strong><font color="#800080">)\n\<br>
 
1482
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Add:&nbsp;string(+)\n\<br>
 
1483
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Decimal:&nbsp;string(.)\n\<br>
 
1484
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Divide:&nbsp;string(/)\n\<br>
 
1485
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Enter:&nbsp;string(\015)\n\<br>
 
1486
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Equal:&nbsp;string(=)\n\<br>
 
1487
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Multiply:&nbsp;string(*)\n\<br>
 
1488
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Num_Lock</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_Subtract:&nbsp;string(-)\n\<br>
 
1489
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Prior:scroll-back(</font><strong><font color="#008080">1</font></strong><font color="#800080">,page)\n\<br>
 
1490
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Next:scroll-forw(</font><strong><font color="#008080">1</font></strong><font color="#800080">,page)\n\<br>
 
1491
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F16:&nbsp;start-extend()&nbsp;select-end(PRIMARY,&nbsp;CUT_BUFFER0,&nbsp;CLIPBOARD)&nbsp;\n\<br>
 
1492
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F18:&nbsp;insert-selection(PRIMARY,&nbsp;CLIPBOARD)&nbsp;\n\<br>
 
1493
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">F27:&nbsp;scroll-back(</font><strong><font color="#008080">100</font></strong><font color="#800080">,page)&nbsp;\n\<br>
 
1494
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">R13:&nbsp;scroll-forw(</font><strong><font color="#008080">100</font></strong><font color="#800080">,page)&nbsp;\n\<br>
 
1495
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Home:&nbsp;scroll-back(</font><strong><font color="#008080">100</font></strong><font color="#800080">,page)&nbsp;\n\<br>
 
1496
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">End:&nbsp;scroll-forw(</font><strong><font color="#008080">100</font></strong><font color="#800080">,page)&nbsp;\n</font><br>
 
1497
<!--atr2html}}--></p>
 
1498
<p>
1302
1499
For example, a more-specific pattern for the resource name lets you override:
1303
 
<pre><code>
1304
 
        XTerm*VT100.translations:       #override \n\
1305
 
                ~Shift&lt;Key&gt;Home:  string(\033[1~)\n\
1306
 
                ~Shift&lt;Key&gt;End:   string(\033[4~)\n\
1307
 
                ~Shift&lt;Key&gt;Prior: string(\033[5~)\n\
1308
 
                ~Shift&lt;Key&gt;Next:  string(\033[6~)\n\
1309
 
                Shift&lt;Key&gt;Prior:  scroll-back(1,page) \n\
1310
 
                Shift&lt;Key&gt;Next:   scroll-forw(1,page) \n\
1311
 
                Shift&lt;Key&gt;Home:   scroll-back(100,page) \n\
1312
 
                Shift&lt;Key&gt;End:    scroll-forw(100,page) \n
1313
 
</code></pre>
 
1500
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1501
<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">translations</font>:<font color="#800080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#override&nbsp;\n\<br>
 
1502
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Home:&nbsp;&nbsp;string(\033[</font><strong><font color="#008080">1</font></strong><font color="#800080">~)\n\<br>
 
1503
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">End:&nbsp;&nbsp;&nbsp;string(\033[</font><strong><font color="#008080">4</font></strong><font color="#800080">~)\n\<br>
 
1504
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Prior:&nbsp;string(\033[</font><strong><font color="#008080">5</font></strong><font color="#800080">~)\n\<br>
 
1505
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Next:&nbsp;&nbsp;string(\033[</font><strong><font color="#008080">6</font></strong><font color="#800080">~)\n\<br>
 
1506
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Prior:&nbsp;&nbsp;scroll-back(</font><strong><font color="#008080">1</font></strong><font color="#800080">,page)&nbsp;\n\<br>
 
1507
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Next:&nbsp;&nbsp;&nbsp;scroll-forw(</font><strong><font color="#008080">1</font></strong><font color="#800080">,page)&nbsp;\n\<br>
 
1508
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">Home:&nbsp;&nbsp;&nbsp;scroll-back(</font><strong><font color="#008080">100</font></strong><font color="#800080">,page)&nbsp;\n\<br>
 
1509
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">End:&nbsp;&nbsp;&nbsp;&nbsp;scroll-forw(</font><strong><font color="#008080">100</font></strong><font color="#800080">,page)&nbsp;\n</font><br>
 
1510
<!--atr2html}}--></p>
 
1511
<p>
1314
1512
makes the home/end and pageup/pagedown keys usable by your editor,
1315
1513
while leaving their shifted equivalents available for the scrollbar.
1316
1514
 
1319
1517
unless you are referring to X Consortium <A HREF="#bug_xterm_r6">xterm</A>.
1320
1518
That program is simply broken in this respect.
1321
1519
<p>
1322
 
At the beginning, when the home/end keys were fixed for XFree86 xterm
 
1520
At the beginning, when the home/end keys were fixed for modern xterm
1323
1521
(in early 1996), there was some discussion regarding what the escape
1324
1522
sequences should be for those keys (for the 6-key editing keypad).
1325
1523
Those were chosen as "PC-style" codes (like SCO "ansi"), i.e.,
1363
1561
the VT220-style, rather than the default PC-style.
1364
1562
Too accustomed to switching modes on the fly, I overlooked a line in
1365
1563
my .Xdefaults file:
1366
 
<pre><code>
1367
 
                *sunKeyboard: true
1368
 
</code></pre>
 
1564
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1565
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<font color="#008080">sunKeyboard</font>:<font color="#800080">&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
1566
<!--atr2html}}--></p>
 
1567
<p>
1369
1568
Downstream packagers (when they noticed this)
1370
1569
accommodated the bug by modifying the VT100 translations
1371
1570
resource which is not a good technical solution since it interferes with
1405
1604
the terminfo <code>kbs</code> from <code>^H</code> to <code>^?</code>.
1406
1605
As noted, the terminfo I wrote for XFree86 3.3.x has an error.
1407
1606
Setting 
1408
 
<pre><code>
1409
 
                *sunKeyboard: true
1410
 
</code></pre>
 
1607
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1608
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<font color="#008080">sunKeyboard</font>:<font color="#800080">&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
1609
<!--atr2html}}--></p>
 
1610
<p>
1411
1611
in the app-defaults file fixes the problem with xterm-88, which was that I
1412
1612
documented in the terminfo the behavior <em>with</em> that resource set.
1413
1613
Similarly, setting
1414
 
<pre><code>
1415
 
                *backarrowKey: false
1416
 
</code></pre>
 
1614
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1615
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<font color="#008080">backarrowKey</font>:<font color="#800080">&nbsp;</font><strong><font color="#000080">false</font></strong><br>
 
1616
<!--atr2html}}--></p>
 
1617
<p>
1417
1618
is one way to address Debian's change to <code>kbs</code>.
1418
1619
 
1419
1620
<li>Debian unstable is xterm-149.
1420
1621
Other than omitting the color resources from
1421
1622
the app-defaults file, I see that it sets
1422
 
        *backarrowKeyIsErase: true
 
1623
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1624
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<font color="#008080">backarrowKeyIsErase</font>:<font color="#800080">&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
1625
<!--atr2html}}--></p>
 
1626
<p>
1423
1627
which would not affect the home/end keys.
1424
1628
(The color resources are redundant, so that is not a problem either).
1425
1629
</ul>
1426
1630
<a href="http://invisible-island.net/xterm/XTerm-debian-88c">Here is a resource file</a>
1427
1631
which I tested with xterm-88c, xterm-149 and xterm-158,
1428
 
using $TERM set to xterm-debian.
 
1632
using $TERM set to xterm-debian:
 
1633
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
1634
<font color="#800000">!&nbsp;$Id: xterm.faq.html,v 1.167 2010/11/25 14:10:03 tom Exp $<br>
 
1635
</font><font color="#800000">!&nbsp;Settings&nbsp;to&nbsp;make&nbsp;xterm-88c&nbsp;work&nbsp;as&nbsp;expected&nbsp;for&nbsp;Debian.<br>
 
1636
</font><font color="#800000">!<br>
 
1637
</font><font color="#800000">!&nbsp;Patch&nbsp;#88&nbsp;was&nbsp;the&nbsp;basis&nbsp;for&nbsp;XFree86&nbsp;3.3.1&nbsp;xterm.&nbsp;&nbsp;There&nbsp;were&nbsp;a&nbsp;few&nbsp;additions<br>
 
1638
</font><font color="#800000">!&nbsp;through&nbsp;patch&nbsp;88c,&nbsp;to&nbsp;incorporate&nbsp;the&nbsp;ptyInitialErase&nbsp;resource.&nbsp;&nbsp;Debian&nbsp;uses<br>
 
1639
</font><font color="#800000">!&nbsp;the&nbsp;VT220-style&nbsp;keyboard,&nbsp;which&nbsp;at&nbsp;#88&nbsp;was&nbsp;the&nbsp;xterm-xfree86&nbsp;terminfo&nbsp;entry,<br>
 
1640
</font><font color="#800000">!&nbsp;with&nbsp;one&nbsp;change:&nbsp;kbs&nbsp;changed&nbsp;from&nbsp;^H&nbsp;to&nbsp;^?.<br>
 
1641
</font><font color="#800000">!<br>
 
1642
</font><font color="#800000">!&nbsp;After&nbsp;patch&nbsp;88,&nbsp;I&nbsp;started&nbsp;work&nbsp;on&nbsp;keyboard&nbsp;changes.&nbsp;&nbsp;The&nbsp;result&nbsp;was&nbsp;that&nbsp;the<br>
 
1643
</font><font color="#800000">!&nbsp;xterm-xfree86&nbsp;terminfo&nbsp;entry&nbsp;was&nbsp;set&nbsp;to&nbsp;the&nbsp;PC-style&nbsp;keyboard,&nbsp;and&nbsp;I&nbsp;added<br>
 
1644
</font><font color="#800000">!&nbsp;xterm-vt220,&nbsp;which&nbsp;corresponded&nbsp;mostly&nbsp;to&nbsp;the&nbsp;older&nbsp;(patch-88)&nbsp;version&nbsp;of&nbsp;the<br>
 
1645
</font><font color="#800000">!&nbsp;xterm-xfree86&nbsp;terminfo&nbsp;entry.<br>
 
1646
</font>&nbsp;<br>
 
1647
<font color="#800000">!&nbsp;The&nbsp;terminfo&nbsp;with&nbsp;patch&nbsp;#88&nbsp;assumed&nbsp;sunKeyboard&nbsp;was&nbsp;set&nbsp;(actually&nbsp;a&nbsp;bug,&nbsp;but<br>
 
1648
</font><font color="#800000">!&nbsp;also&nbsp;assumed&nbsp;in&nbsp;Debian).<br>
 
1649
</font><font color="#800000">!<br>
 
1650
</font><font color="#800000">!&nbsp;A&nbsp;different&nbsp;problem&nbsp;(addressed&nbsp;after&nbsp;patch&nbsp;#88)&nbsp;is&nbsp;that&nbsp;if&nbsp;you&nbsp;wanted&nbsp;to&nbsp;use<br>
 
1651
</font><font color="#800000">!&nbsp;a&nbsp;VT100/VT220-style&nbsp;numeric&nbsp;keypad's&nbsp;escape&nbsp;sequences,&nbsp;you&nbsp;had&nbsp;to&nbsp;have<br>
 
1652
</font><font color="#800000">!&nbsp;NumLock&nbsp;set.&nbsp;&nbsp;Otherwise,&nbsp;in&nbsp;keypad&nbsp;application&nbsp;mode,&nbsp;the&nbsp;keys&nbsp;would&nbsp;transmit<br>
 
1653
</font><font color="#800000">!&nbsp;only&nbsp;the&nbsp;PC-style&nbsp;escape&nbsp;sequences&nbsp;corresponding&nbsp;to&nbsp;the&nbsp;key&nbsp;labels,&nbsp;e.g.,&nbsp;the<br>
 
1654
</font><font color="#800000">!&nbsp;page-up&nbsp;string&nbsp;rather&nbsp;than&nbsp;the&nbsp;escape&nbsp;sequence&nbsp;for&nbsp;keypad-9.<br>
 
1655
</font><strong><font color="#000080">XTerm</font></strong>*<font color="#008080">sunKeyboard</font>:<font color="#800080">&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
1656
&nbsp;<br>
 
1657
<font color="#800000">!&nbsp;These&nbsp;settings&nbsp;overlap&nbsp;to&nbsp;some&nbsp;extent&nbsp;(backarrowKeys&nbsp;says&nbsp;to&nbsp;send&nbsp;a&nbsp;127&nbsp;for<br>
 
1658
</font><font color="#800000">!&nbsp;the&nbsp;"backspace"&nbsp;key,&nbsp;and&nbsp;ptyInitialErase&nbsp;says&nbsp;to&nbsp;use&nbsp;the&nbsp;pty's&nbsp;initial&nbsp;sense<br>
 
1659
</font><font color="#800000">!&nbsp;of&nbsp;the&nbsp;erase&nbsp;character,&nbsp;which&nbsp;is&nbsp;reported&nbsp;to&nbsp;be&nbsp;the&nbsp;same&nbsp;on&nbsp;Linux).<br>
 
1660
</font><strong><font color="#000080">XTerm</font></strong>*<font color="#008080">backarrowKey</font>:<font color="#800080">&nbsp;</font><strong><font color="#000080">false</font></strong><br>
 
1661
<strong><font color="#000080">XTerm</font></strong>*<font color="#008080">ptyInitialErase</font>:<font color="#800080">&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
1662
<!--atr2html}}--></p>
1429
1663
 
1430
1664
<h3><A NAME="xterm_arrows">Why can't I use the cursor keys in (whatever) shell?</A></h3>
1431
1665
VTxxx (VT100 and up) terminals may send different escape sequences for
1476
1710
<h3><A NAME="xterm_tabs">Why can't I select tabs in xterm?</A></h3>
1477
1711
This issue was noted early on, <a href="#known_bugs">here</a> in 1997.
1478
1712
<p>
1479
 
xterm is copying from the screen, which stores only printable characters.
 
1713
Xterm is copying from the screen, which stores only printable characters.
1480
1714
That includes spaces and line-drawing characters.
1481
1715
But tabs are special; they are used for more than one purpose.
1482
1716
<p>
1673
1907
<h3><A NAME="xterm_terminfo">What $TERM should I use?</A></h3>
1674
1908
<p>
1675
1909
The <code>xterm-color</code> value for $TERM
1676
 
is a bad choice for XFree86 xterm because it is
 
1910
is a bad choice for modern xterm because it is
1677
1911
commonly used for a terminfo entry which happens to not support <code>bce</code>.
1678
1912
Complicating matters, FreeBSD (after dithering for a few years on the matter)
1679
1913
introduced a bastardized version which implies the opposite sense of <code>bce</code>,
1688
1922
<code>xterm-new</code> (also distributed with ncurses).
1689
1923
<p>
1690
1924
The term "<code>bce</code>" stands for "back color erase".
1691
 
Terminals such as XFree86 xterm
 
1925
Terminals such as modern xterm
1692
1926
and rxvt implement back color erase, others such as dtterm do not.
1693
1927
(Roughly half of the emulators that I know about implement bce).
1694
1928
When an application clears the screen, a terminal that implements back
1705
1939
<code>bce</code>, because it was applied originally to a terminal type
1706
1940
which does
1707
1941
not implement back color erase.
1708
 
It will "work" for XFree86 xterm,
 
1942
It will "work" for modern xterm,
1709
1943
though less efficient.  Some other applications such as the slang library
1710
1944
have hardcoded support for terminals that implement back color erase.
1711
1945
Given the "xterm-color" description, those will be efficient &ndash; and
1794
2028
For example (from Bjorn Helgaas &lt;helgaas@dhc.net&gt;)
1795
2029
this procedure adds these capabilities to the "xterm"
1796
2030
terminfo definition on HP-UX 10.20:
1797
 
<pre><code>
1798
 
        cp /usr/lib/terminfo/x/xterm /usr/lib/terminfo/x/xterm.orig
1799
 
        untic xterm &gt; /tmp/xterm.src
1800
 
        echo " smcup=\E7\E[?47h, rmcup=\E[2J\E[?47l\E8," &gt;&gt; /tmp/xterm.src
1801
 
        tic /tmp/xterm.src
1802
 
</code></pre>
 
2031
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
2032
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cp&nbsp;/usr/lib/terminfo/x/xterm&nbsp;/usr/lib/terminfo/x/xterm.orig<br>
 
2033
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;untic&nbsp;xterm&nbsp;&gt;&nbsp;/tmp/xterm.src<br>
 
2034
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">echo</font></strong>&nbsp;<font color="#800080">"&nbsp;smcup=</font><strong><font color="#800000">\</font></strong><font color="#800080">E7</font><strong><font color="#800000">\</font></strong><font color="#800080">E[?47h,&nbsp;rmcup=</font><strong><font color="#800000">\</font></strong><font color="#800080">E[2J</font><strong><font color="#800000">\</font></strong><font color="#800080">E[?47l</font><strong><font color="#800000">\</font></strong><font color="#800080">E8,"</font>&nbsp;&gt;&gt;&nbsp;/tmp/xterm.src<br>
 
2035
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tic&nbsp;/tmp/xterm.src<br>
 
2036
<!--atr2html}}--></p>
 
2037
<p>
1803
2038
In this example, the terminfo strings are a series of operations:
1804
2039
<dl>
1805
2040
<dt><code>smcup</code>
1867
2102
the screen after the shell process), it will save the
1868
2103
cursor position again, so the position which is restored when finally
1869
2104
exiting your program is the last one saved, not the first.
1870
 
XFree86 xterm
 
2105
Modern xterm
1871
2106
(from late 1998, <a href="xterm.log.html#xterm_90">patch 90</a>)
1872
2107
changes the behavior of the cursor save/restore
1873
2108
operations so they apply only to the current screen.
1896
2131
that can be abused in special conditions.
1897
2132
For novice (unknowledgable) users, this can be a problem.
1898
2133
<p>
1899
 
xterm provides resource-settings and menu entries to allow this and related
 
2134
Xterm provides resource-settings and menu entries to allow this and related
1900
2135
features to be enabled or disabled.
1901
2136
See for example <code>allowWindowOps</code>
1902
2137
The default resource settings in xterm can be overridden by a packager.
1949
2184
same erase character as the console.  The current scheme (X11R6) uses keyboard
1950
2185
mapping tables that are independent of the environment.
1951
2186
<P>
1952
 
XFree86 xterm provides a resource toggle <em>backarrowKey</em>
 
2187
Modern xterm provides a resource toggle <em>backarrowKey</em>
1953
2188
(and an escape sequence from VT320)
1954
2189
that changes this key between the two styles (backspace or delete).
1955
2190
<p>
1956
 
With XFree86 xterm
 
2191
With modern xterm
1957
2192
<a href="xterm.log.html#xterm_95">patch 95</a>
1958
2193
(also in the stable version as "88c"),
1959
2194
you may have an xterm which can
2028
2263
Alternatively, you can set resources.
2029
2264
This works reasonably well for environments where you have
2030
2265
different versions of xterm, e.g.,
2031
 
<pre><code>
2032
 
        XTerm*VT100.translations: #override \n\
2033
 
                &lt;Key&gt;Delete: string(0x7f)
2034
 
</code></pre>
 
2266
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
2267
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">translations</font>:<font color="#800080">&nbsp;#override&nbsp;\n\<br>
 
2268
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Key&gt;Delete:&nbsp;string(</font><strong><font color="#008080">0x7f</font></strong><font color="#800080">)</font><br>
 
2269
<!--atr2html}}--></p>
2035
2270
I do not do that either, because it is not flexible.
2036
2271
Not all programs use the same sense of
2037
2272
<code>stty erase</code>;
2042
2277
(Or not really &ndash; xterm has a <code>keymap()</code> action which could
2043
2278
support this if you provided a rather complex resource settings, but
2044
2279
the X library support for that is broken in X11R6).
2045
 
Instead, I have added to XFree86 a set of resources (and popup menu entries)
 
2280
Instead, I have added to xterm a set of resources (and popup menu entries)
2046
2281
to allow simple switching between the different styles of keyboard,
2047
2282
in particular for the backspace/delete issues.
2048
2283
See the manual page for
2131
2366
<h3><A NAME="xterm_8bits">Why can't I input 8-bit characters?</A></h3>
2132
2367
You must have the <code>eightBitInput</code> resource set to do this.
2133
2368
 
2134
 
<h3><A NAME="my_xdefaults">My .Xdefaults for XTERM</A></h3>
2135
 
<PRE><code>
2136
 
        XTerm*internalBorder:  10
2137
 
        XTerm*highlightSelection:  true
2138
 
        XTerm*VT100.colorBDMode:  on
2139
 
        XTerm*VT100.colorBD:  blue
2140
 
        XTerm*VT100.colorULMode:  on
2141
 
        XTerm*VT100.colorUL:  magenta
2142
 
        XTerm*VT100.eightBitInput:  true
2143
 
        XTerm*VT100.eightBitOutput:  true
2144
 
        XTerm*scrollBar:  true
2145
 
        XTerm*VT100.titeInhibit:  true
2146
 
 
2147
 
        XTerm*VT100.colorMode:  on
2148
 
        XTerm*VT100.dynamicColors:  on
2149
 
 
2150
 
        ! Uncomment this to use color for underline attribute
2151
 
        XTerm*VT100.colorULMode:  on
2152
 
        XTerm*VT100.underLine:  off
2153
 
 
2154
 
        ! Uncomment this to use color for the bold attribute
2155
 
        XTerm*VT100.colorBDMode: on
2156
 
 
2157
 
        XTerm*VT100.color0: black
2158
 
        XTerm*VT100.color1: red3
2159
 
        XTerm*VT100.color2: green3
2160
 
        XTerm*VT100.color3: yellow3
2161
 
        XTerm*VT100.color4: blue3
2162
 
        XTerm*VT100.color5: magenta3
2163
 
        XTerm*VT100.color6: cyan3
2164
 
        XTerm*VT100.color7: gray90
2165
 
        XTerm*VT100.color8: gray30
2166
 
        XTerm*VT100.color9: red
2167
 
        XTerm*VT100.color10: green
2168
 
        XTerm*VT100.color11: yellow
2169
 
        XTerm*VT100.color12: blue
2170
 
        XTerm*VT100.color13: magenta
2171
 
        XTerm*VT100.color14: cyan
2172
 
        XTerm*VT100.color15: white
2173
 
        XTerm*VT100.colorUL: yellow
2174
 
        XTerm*VT100.colorBD: white
2175
 
 
2176
 
        XTerm*VT100.cursorColor: lime green
2177
 
</code>
2178
 
</PRE>
2179
 
XFree86 xterm comes with two copies of the resource file,
 
2369
<h3><A NAME="my_xdefaults">Sample .Xdefaults Color-Settings for XTerm</A></h3>
 
2370
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
2371
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<font color="#008080">internalBorder</font>:<font color="#800080">&nbsp;&nbsp;</font><strong><font color="#008080">10</font></strong><br>
 
2372
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<font color="#008080">highlightSelection</font>:<font color="#800080">&nbsp;&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
2373
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">colorBDMode</font>:<font color="#800080">&nbsp;&nbsp;on</font><br>
 
2374
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">colorBD</font>:<font color="#800080">&nbsp;&nbsp;blue</font><br>
 
2375
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">colorULMode</font>:<font color="#800080">&nbsp;&nbsp;on</font><br>
 
2376
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">colorUL</font>:<font color="#800080">&nbsp;&nbsp;magenta</font><br>
 
2377
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">eightBitInput</font>:<font color="#800080">&nbsp;&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
2378
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">eightBitOutput</font>:<font color="#800080">&nbsp;&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
2379
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<font color="#008080">scrollBar</font>:<font color="#800080">&nbsp;&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
2380
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">titeInhibit</font>:<font color="#800080">&nbsp;&nbsp;</font><strong><font color="#000080">true</font></strong><br>
 
2381
&nbsp;<br>
 
2382
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">colorMode</font>:<font color="#800080">&nbsp;&nbsp;on</font><br>
 
2383
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">dynamicColors</font>:<font color="#800080">&nbsp;&nbsp;on</font><br>
 
2384
&nbsp;<br>
 
2385
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800000">!&nbsp;Uncomment&nbsp;this&nbsp;to&nbsp;use&nbsp;color&nbsp;for&nbsp;underline&nbsp;attribute<br>
 
2386
</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">colorULMode</font>:<font color="#800080">&nbsp;&nbsp;on</font><br>
 
2387
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">underLine</font>:<font color="#800080">&nbsp;&nbsp;off</font><br>
 
2388
&nbsp;<br>
 
2389
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#800000">!&nbsp;Uncomment&nbsp;this&nbsp;to&nbsp;use&nbsp;color&nbsp;for&nbsp;the&nbsp;bold&nbsp;attribute<br>
 
2390
</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">colorBDMode</font>:<font color="#800080">&nbsp;on</font><br>
 
2391
&nbsp;<br>
 
2392
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color0</font>:<font color="#800080">&nbsp;black</font><br>
 
2393
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color1</font>:<font color="#800080">&nbsp;red3</font><br>
 
2394
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color2</font>:<font color="#800080">&nbsp;green3</font><br>
 
2395
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color3</font>:<font color="#800080">&nbsp;yellow3</font><br>
 
2396
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color4</font>:<font color="#800080">&nbsp;blue3</font><br>
 
2397
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color5</font>:<font color="#800080">&nbsp;magenta3</font><br>
 
2398
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color6</font>:<font color="#800080">&nbsp;cyan3</font><br>
 
2399
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color7</font>:<font color="#800080">&nbsp;gray90</font><br>
 
2400
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color8</font>:<font color="#800080">&nbsp;gray30</font><br>
 
2401
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color9</font>:<font color="#800080">&nbsp;red</font><br>
 
2402
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color10</font>:<font color="#800080">&nbsp;green</font><br>
 
2403
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color11</font>:<font color="#800080">&nbsp;yellow</font><br>
 
2404
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color12</font>:<font color="#800080">&nbsp;blue</font><br>
 
2405
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color13</font>:<font color="#800080">&nbsp;magenta</font><br>
 
2406
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color14</font>:<font color="#800080">&nbsp;cyan</font><br>
 
2407
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">color15</font>:<font color="#800080">&nbsp;white</font><br>
 
2408
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">colorUL</font>:<font color="#800080">&nbsp;yellow</font><br>
 
2409
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">colorBD</font>:<font color="#800080">&nbsp;white</font><br>
 
2410
&nbsp;<br>
 
2411
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">cursorColor</font>:<font color="#800080">&nbsp;lime&nbsp;green</font><br>
 
2412
<!--atr2html}}--></p>
 
2413
<p>
 
2414
Xterm comes with two copies of each resource file,
2180
2415
one with color only (<code>XTerm-col.ad</code>,
2181
2416
which is installed as <code>XTerm-color</code>),
2182
2417
and the regular one (<code>XTerm.ad</code>,
2185
2420
with a separate <code>XTerm</code> app-defaults
2186
2421
file which does not contain color,
2187
2422
add the following line to your <code>.Xdefaults</code> file:
2188
 
<PRE><code>
2189
 
        *customization: -color
2190
 
</code></PRE>
 
2423
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
2424
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<font color="#008080">customization</font>:<font color="#800080">&nbsp;-color</font><br>
 
2425
<!--atr2html}}--></p>
2191
2426
 
2192
2427
<h3><A NAME="tiny_menus">Why are the menus tiny?</A></h3>
2193
2428
Everything seems to work, except that the
2200
2435
24x80 (or whatever the -geometry parameter happens to be) is applying to the
2201
2436
menus in pixels.
2202
2437
This resource makes the geometry apply to the menus as well as the VT100 widget:
2203
 
<PRE><code>
2204
 
        XTerm*geometry: 80x24
2205
 
</code></PRE>
 
2438
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
2439
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<font color="#008080">geometry</font>:<font color="#800080">&nbsp;80x24</font><br>
 
2440
<!--atr2html}}--></p>
2206
2441
while this applies only to the VT100 widget
2207
2442
(which is probably what you intended):
2208
 
<PRE><code>
2209
 
        XTerm.VT100.geometry: 80x24
2210
 
</code></PRE>
 
2443
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
2444
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>.<strong><font color="#000080">VT100</font></strong>.<font color="#008080">geometry</font>:<font color="#800080">&nbsp;80x24</font><br>
 
2445
<!--atr2html}}--></p>
2211
2446
or better yet (to allow for the toolbar option, which uses a level of
2212
2447
widget hierarchy):
2213
 
<PRE><code>
2214
 
        XTerm*VT100.geometry: 80x24
2215
 
</code></PRE>
 
2448
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
2449
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">geometry</font>:<font color="#800080">&nbsp;80x24</font><br>
 
2450
<!--atr2html}}--></p>
2216
2451
 
2217
2452
<h3><A NAME="warning_msg">What is this warning message?</A></h3>
2218
2453
<DL>
2237
2472
<p>
2238
2473
If the message bothers you (e.g., if you aren't starting xterm from
2239
2474
a window manager menu), you can suppress it by setting a resource:
2240
 
<pre><code>
2241
 
                XTerm*openIm:false
2242
 
</code></pre>
 
2475
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
2476
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<font color="#008080">openIm</font>:<strong><font color="#000080">false</font></strong><br>
 
2477
<!--atr2html}}--></p>
2243
2478
 
2244
2479
<dt>Warning: Actions not found: ignore, "xxx"
2245
2480
<dd>The action "xxx" (for example "scroll-back") is specified in a resource
2246
2481
file whose translations match widgets that do not support them.
2247
2482
For example, this
2248
 
<pre><code>
2249
 
                XTerm*translations:     #override\n\
2250
 
                        &lt;Leave&gt;, ~Ctrl ~Meta &lt;Btn2Up&gt;: ignore()\n\
2251
 
                        ~Shift &lt;Key&gt;KP_8: scroll-back(1,line)\n\
2252
 
                        ~Shift &lt;Key&gt;KP_2: scroll-forw(1,line)\n\
2253
 
                        Shift &lt;Key&gt;KP_8: scroll-back(1,halfpage)\n\
2254
 
                        Shift &lt;Key&gt;KP_2: scroll-forw(1,halfpage)
2255
 
</code></pre>
 
2483
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
2484
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<font color="#008080">translations</font>:<font color="#800080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#override\n\<br>
 
2485
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Leave&gt;</font></strong><font color="#800080">,&nbsp;~Ctrl&nbsp;~Meta&nbsp;</font><strong><font color="#000080">&lt;Btn2Up&gt;</font></strong><font color="#800080">:&nbsp;ignore()\n\<br>
 
2486
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_8:&nbsp;scroll-back(</font><strong><font color="#008080">1</font></strong><font color="#800080">,line)\n\<br>
 
2487
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_2:&nbsp;scroll-forw(</font><strong><font color="#008080">1</font></strong><font color="#800080">,line)\n\<br>
 
2488
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_8:&nbsp;scroll-back(</font><strong><font color="#008080">1</font></strong><font color="#800080">,halfpage)\n\<br>
 
2489
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_2:&nbsp;scroll-forw(</font><strong><font color="#008080">1</font></strong><font color="#800080">,halfpage)</font><br>
 
2490
<!--atr2html}}--></p>
 
2491
<p>
2256
2492
will produce warnings such as
2257
2493
<pre><code>
2258
2494
                Warning: Actions not found: ignore, scroll-back, scroll-forw
2260
2496
                Warning: Actions not found: ignore, scroll-back, scroll-forw
2261
2497
</code></pre>
2262
2498
This is a correct form, assigning the actions to the "VT100" widget.
2263
 
<pre><code>
2264
 
                XTerm*VT100.translations:     #override\n\
2265
 
                        &lt;Leave&gt;, ~Ctrl ~Meta &lt;Btn2Up&gt;: ignore()\n\
2266
 
                        ~Shift &lt;Key&gt;KP_8: scroll-back(1,line)\n\
2267
 
                        ~Shift &lt;Key&gt;KP_2: scroll-forw(1,line)\n\
2268
 
                        Shift &lt;Key&gt;KP_8: scroll-back(1,halfpage)\n\
2269
 
                        Shift &lt;Key&gt;KP_2: scroll-forw(1,halfpage)
2270
 
</code></pre>
 
2499
<!--{{atr2html--><p style="font-family: monospace; font-size: 10pt;">
 
2500
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><font color="#000080">XTerm</font></strong>*<strong><font color="#000080">VT100</font></strong>.<font color="#008080">translations</font>:<font color="#800080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#override\n\<br>
 
2501
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><strong><font color="#000080">&lt;Leave&gt;</font></strong><font color="#800080">,&nbsp;~Ctrl&nbsp;~Meta&nbsp;</font><strong><font color="#000080">&lt;Btn2Up&gt;</font></strong><font color="#800080">:&nbsp;ignore()\n\<br>
 
2502
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_8:&nbsp;scroll-back(</font><strong><font color="#008080">1</font></strong><font color="#800080">,line)\n\<br>
 
2503
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~Shift&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_2:&nbsp;scroll-forw(</font><strong><font color="#008080">1</font></strong><font color="#800080">,line)\n\<br>
 
2504
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_8:&nbsp;scroll-back(</font><strong><font color="#008080">1</font></strong><font color="#800080">,halfpage)\n\<br>
 
2505
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Shift&nbsp;</font><strong><font color="#000080">&lt;Key&gt;</font></strong><font color="#800080">KP_2:&nbsp;scroll-forw(</font><strong><font color="#008080">1</font></strong><font color="#800080">,halfpage)</font><br>
 
2506
<!--atr2html}}--></p>
2271
2507
 
2272
2508
<dt><a name="alloc_color">Warning: Cannot allocate colormap entry for "xxx"</a>
2273
2509
<dd>This comes from the X library.
2274
 
XFree86 xterm uses the default color map.
 
2510
Modern xterm uses the default color map.
2275
2511
What this means is that if your X server has insufficient space to
2276
2512
store color information for more than one color map, other applications
2277
2513
which could use other color maps may conflict with xterm.
2294
2530
that reduces the number of slots in the color map that are needed.
2295
2531
Even with this improvement, xterm must still allocate 4 colors during
2296
2532
initialization to determine how to display the cursor.
2297
 
If none of those colors can be allocated, XFree86 xterm reverts to monochrome.
 
2533
If none of those colors can be allocated, xterm reverts to monochrome.
2298
2534
</DL>
2299
2535
 
2300
2536
<h3><A NAME="known_bugs">Known Bugs in XTERM</A></h3><P>
2301
 
These are the known bugs (or limitations) in the XFree86 xterm.
 
2537
These are the known bugs (or limitations) in modern xterm.
2302
2538
They are also present in the other versions based on the X Consortium
2303
2539
sources (color_xterm, ansi_xterm, kterm).
2304
2540
<P>
2320
2556
 
2321
2557
<h4><A NAME="bug_xterm_r6">X11R6.3 XTERM</A></h4>
2322
2558
The X Consortium version of xterm (and versions based on it) has
2323
 
additional bugs not in XFree86 xterm:
 
2559
additional bugs not in modern xterm:
2324
2560
<UL>
2325
2561
<LI>the program must be run with fixed (nonproportional) fonts.
2326
2562
<LI>the home and end keys do not generate usable escape sequences, due to
2419
2655
<h4><A NAME="bug_gnometerm">GNOME TERMINAL</A>
2420
2656
<A HREF="http://www.gnome.org/">link</A></h4>
2421
2657
GNOME Terminal is developed separately from both xterm and rxvt,
2422
 
and is based on the zvt (zterm) widget.
 
2658
and was originally based on the zvt (zterm) widget.
2423
2659
Like
2424
2660
<a href="#bug_kvt">kvt</a>),
2425
2661
it appears to have been developed imitating other terminal emulators
2430
2666
<A HREF="../vttest/vttest.html">vttest</A>.
2431
2667
Beginning with late 1999, reports indicate that it
2432
2668
does not properly parse ANSI control
2433
 
sequences:  the vim editor is using XFree86 xterm's vt220-style
 
2669
sequences:  the vim editor is using xterm's vt220-style
2434
2670
"Send Device Attributes" (Secondary DA) control sequence to obtain the
2435
2671
terminal emulator's version.
2436
2672
That is, it sends
2447
2683
<p>
2448
2684
But it suffices for vi.
2449
2685
<p>
2450
 
A more recent GNOME Terminal (version 1.4.0.4, late 2001)
2451
 
did not implement a complete vt102: it was missing several features
 
2686
A more recent GNOME Terminal uses the VTE widget.
 
2687
I observed version 1.4.0.4 in late 2001, which mentioned it in the credits
 
2688
(although VTE 0.1's ChangeLog mentions no date before February 2002).
 
2689
It does not implement a complete vt102: it was missing several features
2452
2690
which can be demonstrated in
2453
2691
<A HREF="../vttest/vttest.html">vttest</A>).
2454
2692
Most of the bugs in the Device Attributes
2455
2693
responses remain, but it works a little better with vim.
2456
2694
However, there are problems with the alternate screen that show up with vim.
2457
2695
Again, these can be demonstrated with vttest (menu 11.6.3 in the 20011130 snapshot).
 
2696
<p>Rather than evolving from zvt,
 
2697
VTE is largely a new work.
 
2698
It does credit zvt in one place.
 
2699
However, its source code uses xterm's source code as a resource,
 
2700
accounting for odd (often incomplete) chunks.
 
2701
Reviewing 0.9.0 (September 2002):
 
2702
<ul>
 
2703
<li>the termcap file.
 
2704
The last comment in the file is copied from xterm's source.
 
2705
The content of course is generated from ncurses with a small number of
 
2706
changes.
 
2707
<li>the parser <code>src/vte.c</code> &mdash;a 14,125 line file.
 
2708
For example, the chunks related to DEC VT220 keyboard queries
 
2709
and DEC private modes contain comments copied from xterm's source code.
 
2710
</ul>
 
2711
<p>Later versions of VTE incorporate more features (and comments,
 
2712
symbol names, etc), from xterm's source.
 
2713
In some instances,
 
2714
the copied features were disabled by Red Hat's package for xterm.
 
2715
<a href="https://bugzilla.redhat.com/show_bug.cgi?id=122815">Here</a>
 
2716
is a related bug report, for key bindings.
2458
2717
<p>
2459
2718
The documentation for GNOME terminal asserts:
2460
2719
<blockquote>
2518
2777
The same comment is true of "character set conversion".
2519
2778
None of that is reflected in VTE's changelog.
2520
2779
<p>
 
2780
As an aside, the credits in GNOME Terminal's "About" box also are inaccurate.
 
2781
For several years (according to its change-log),
 
2782
most of the work on VTE (the principal part of the program) was done
 
2783
by Nalin Dahyabhai.
 
2784
<p>
2521
2785
xterm on the other hand, can be told with the <code>tcapFunctionKeys</code>
2522
2786
resource setting to use a more complete subset, based on the ncurses
2523
2787
extended terminal descriptions.
2718
2982
(I was able to do this with both Lesstif and Motif libraries).
2719
2983
Given that, I decided to restructure the menus entirely, making a toolbar
2720
2984
which could support at compile-time either widget set.
2721
 
<LI><a href="http://www.fh-wilhelmshaven.de/~akcaagaa/index_mxterm.html">mxterm</a>
 
2985
<LI><a href="http://web.archive.org/web/*/http%3A//www.fh-wilhelmshaven.de/~akcaagaa/index_mxterm.html">mxterm</a>
2722
2986
This is a different reworking of the Motif widget patch,
2723
2987
using a 1993 version (ignoring the more recent 1994 patches noted above).
2724
2988
However, it appears to have the same technical defect that I noted above.
2764
3028
accounts for about 300kb, which does add up if you happen to be
2765
3029
running 50 xterm processes (i.e., about 10Mb).
2766
3030
<p>
 
3031
This comment was topical in December 2001:
 
3032
<blockquote>
2767
3033
Compared with something like GNOME Terminal, which takes 2-3 times,
2768
3034
or KDE konsole, which takes 15-20 times as much memory to run,
2769
3035
xterm and rxvt memory requirements are indistinguishable to the normal user.
 
3036
</blockquote>
 
3037
In June 2010, the numbers have changed somewhat.
 
3038
Here is a table showing the total application and library sizes needed
 
3039
for each of the terminal emulators on my development machine.
 
3040
All sizes are in kb (1024 bytes).
 
3041
<table border="1" summary="Comparing XTerm's size">
 
3042
<tr>
 
3043
<th>program</th>
 
3044
<th>base size</th>
 
3045
<th>total size</th>
 
3046
<th>libraries</th>
 
3047
</tr>
 
3048
<tr><td>aterm</td><td>127</td><td>10763</td><td>45</td></tr>
 
3049
<tr><td>color_xterm</td><td>142</td><td>3647</td><td>13</td></tr>
 
3050
<tr><td>Eterm</td><td>1</td><td>5126</td><td>19</td></tr>
 
3051
<tr><td>fbiterm</td><td>6</td><td>2424</td><td>8</td></tr>
 
3052
<tr><td>gnome-terminal</td><td>292</td><td>14587</td><td>51</td></tr>
 
3053
<tr><td>hpterm</td><td>146</td><td>14386</td><td>31</td></tr>
 
3054
<tr><td>konsole</td><td>2</td><td>39815</td><td>71</td></tr>
 
3055
<tr><td>kterm</td><td>226</td><td>4194</td><td>17</td></tr>
 
3056
<tr><td>mlterm</td><td>316</td><td>6606</td><td>27</td></tr>
 
3057
<tr><td>mrxvt</td><td>298</td><td>4515</td><td>19</td></tr>
 
3058
<tr><td>multi-aterm</td><td>144</td><td>2821</td><td>7</td></tr>
 
3059
<tr><td>pterm</td><td>405</td><td>12817</td><td>42</td></tr>
 
3060
<tr><td>rxvt 2.6.4</td><td>108</td><td>2725</td><td>6</td></tr>
 
3061
<tr><td>rxvt 2.7.10</td><td>152</td><td>2829</td><td>7</td></tr>
 
3062
<tr><td>rxvt-unicode</td><td>1259</td><td>13641</td><td>49</td></tr>
 
3063
<tr><td>terminal.app</td><td>211</td><td>15274</td><td>29</td></tr>
 
3064
<tr><td>wterm</td><td>110</td><td>2922</td><td>11</td></tr>
 
3065
<tr><td>xfce4-terminal</td><td>148</td><td>14059</td><td>48</td></tr>
 
3066
<tr><td>xgterm</td><td>953</td><td>4602</td><td>14</td></tr>
 
3067
<tr><td>xhpterm</td><td>130</td><td>2748</td><td>6</td></tr>
 
3068
<tr><td>xiterm</td><td>12</td><td>3762</td><td>16</td></tr>
 
3069
<tr><td>xterm (everything)</td><td>346</td><td>5484</td><td>24</td></tr>
 
3070
<tr><td>xterm (minimal)</td><td>186</td><td>4123</td><td>15</td></tr>
 
3071
<tr><td>xterm-r5</td><td>135</td><td>4164</td><td>11</td></tr>
 
3072
<tr><td>xterm-r6</td><td>140</td><td>4169</td><td>11</td></tr>
 
3073
</table>
 
3074
<p>
 
3075
Counting the libraries is appropriate, since some programs such as xiterm
 
3076
and the VTE-based programs are implemented in libraries.
2770
3077
<p>
2771
3078
These comments apply to versions of <EM>rxvt</EM> through 2.21:
2772
3079
<UL>
2830
3137
<p>
2831
3138
That is, it was.
2832
3139
The name was later appropriated by a different
2833
 
<a href="http://oss.software.ibm.com/linux/projects/iterm/">program</a>,
 
3140
<a href="http://web.archive.org/web/*/http%3A//oss.software.ibm.com/linux/projects/iterm/">program</a>,
2834
3141
which also uses the name <code>iterm</code>.
2835
3142
Like gnome-terminal,
2836
3143
iterm aims to be an xterm-emulator
2837
3144
rather than a VT102- or VT220-emulator.
2838
3145
<p>
2839
 
An earlier <a href="http://www.openi18n.org">attempt</a> by the same author
 
3146
An earlier <a href="http://web.archive.org/web/*/http%3A//www.openi18n.org">attempt</a> by the same author
2840
3147
(the "CSI-xterm")
2841
3148
incorporates some of the changes I made for XFree86 xterm
2842
3149
via cut and paste
2856
3163
Xterm can be built with either X11R5 or X11R6 libraries; however X11R6
2857
3164
requires much more data to be installed before xterm will run.
2858
3165
Xterm uses the <code>Xaw</code> library for popup menus.
2859
 
<LI>imake and <EM>xmkmf</EM>.
 
3166
<LI>imake and <code>xmkmf</code>.
2860
3167
These utilities produce a Makefile from the Imakefile.
2861
3168
They are not essential, but useful, particularly on systems with
2862
3169
unusual configurations.
2863
3170
</UL>
2864
 
If you have a working <EM>xmkmf</EM> script (or correctly configured imake utility),
 
3171
If you have a working <code>xmkmf</code> script (or correctly configured imake utility),
2865
3172
all you need to do is type
2866
3173
<PRE><code>
2867
3174
        xmkmf
2868
3175
        make
2869
3176
</code></PRE>
2870
 
I have written a simple <EM>configure</EM> script for xterm which uses imake
2871
 
(or <EM>xmkmf</EM>) to generate a Makefile from the Makefile.in.
 
3177
I have written a <EM>configure</EM> script for xterm which can use <code>imake</code>
 
3178
(or <code>xmkmf</code>) to generate a Makefile from the Makefile.in.
 
3179
Or it can do without <code>imake</code> entirely.
2872
3180
I have restructured xterm to eliminate most hardcoded
2873
3181
<code>#ifdef</code>'s, replacing them with definitions that can be derived
2874
3182
with the configuration script.