You should note that other changes have been made as well, by other people, to fix bugs and correct ifdef's for portability. Most of these are summarized in the XFree86 CHANGELOG (found in the unbundled tree, xc/programs/Xserver/hw/xfree86). Here is the latest version of this file.
ech bug.
However, it is less VT100-compatible than the earlier versions such as 2.21b
because it does not render reverse video (DECSCNM) properly.
All versions do not update the screen frequently enough, making animation
ineffective.
See vttest, tests 1 and 2.
That is from reading the source code. However testing under Debian Linux, something is wrong with the resource processing (neither popup menus nor colors work).
That is, it was.
The name was later appropriated by a different
program,
which also uses the name iterm.
Like gnome-terminal,
iterm aims to be an xterm-emulator
rather than a VT102- or VT220-emulator.
An earlier attempt by the same author (the "CSI-xterm") incorporates some of the changes I made for XFree86 xterm via cut and paste (but does not mention this in its README). It is said to be the basis for Solaris 10 xterm.
Both have similar problems running vttest.
Xaw library for popup menus.
xmkmf
make
I have written a simple configure script for xterm which uses imake
(or xmkmf) to generate a Makefile from the Makefile.in.
I plan to restructure xterm to eliminate the hardcoded
#ifdef's, replacing them with definitions that can be derived
with the configuration script.
The configure script is more flexible than xmkmf, since it
allows you to enable or disable a variety of features.
Type
configure --helpto get a list of options.
Though I plan to replace the hardcoded ifdef's with autoconfigured values, it will still continue to build properly with the imake environment, since that is how large distributions incorporate xterm.
The command-line options, X resources and similar configurable options
of xterm are documented in the manual page.
Control sequences, i.e., programming information are in the
ctlseqs.ms file which I bundle with the program source.
(It used to be in the same directory in the X distribution, but was moved
to a difference part of the tree some time ago). Note that you must format
this file with different options than a manpage, e.g.,
tbl ctlseqs.ms | nroff -ms >ctlseqs.txt
tbl ctlseqs.ms | groff -ms >ctlseqs.ps
As a PostScript file, the individual letters of the control sequences are
all boxed, for emphasis, but I find the text file equally readable.
Done, except for the corresponding support in the VT52 emulation. It would be nice to have a dialog to control this.
My configure script currently provides tests for the variations of Athena widgets (Xaw3D, neXtaw). I intend to make additional changes to support Motif scrollbars and menus. Motif requires a different style of interface for the menus: binding a popup menu to control right mouse may cause the server to hang. As an intermediate step, I implemented a toolbar for the Athena widgets. In turn, that works well enough except with XFree86 4.x: the Xaw library geometry management is broken. (Other implementations of the Athena widgets work well enough).