I've been doing some work on xterm. My original goal was to let me
see some color on the screen. (I think it's silly that we spend
hundreds of dollars on neat color monitors, and the software we use
most often -- xterm and emacs -- doesn't make much use of color.
The next step is for emacs to do the mode line in color.) In the
process I also fixed xterm so it makes entries in /etc/utmp.
This is a new port of xterm, done from the working sources that
Rutgers uses on our Suns, with two changes:
(1) A few changes were needed to main.c in order to get it to work
with Linux. I believe these changes have been made cleanly, so that
the resulting source will still work on other systems. I did not look
at the original port of xterm. However this one seems more complete,
since "who" will now show your xterm sessions, as long as xterm is
installed setuid (as it should be). This did not work in the original
code. There's no overtly Linux-specific code in this port -- it's
just a matter of having the right combination of POSIX and BSD
features. (I suspect the Linux setup would actually work on a Sun,
and might even be a preferable configuration.)
(2) Various resources were added to allow text to be displayed in
color. To find the new features, I suggest diff'ing xterm.man.RU and
xterm.man. Briefly, you can now specify foreground and background
colors for the following:
color2 and color2Back: user defined colors, display using ESC [ 2 m
color3 and color3Back: user defined colors, display using ESC [ 3 m
boldColor and boldBack: boldface text is displayed with these colors
standColor and standBack: if one of these is defined, "standout"
(ESC [ 7 m) is done using these colors instead of reverse video
ulColor and ulBack: if one of these is defined, these colors are used
instead of underlining
The files *.RU are the original versions of files changed during the
process.
While the original code was X11R5, Rutgers appears to have made a
couple of bug fixes since the initial release of X11R5. My changes
were made on top of the current Rutgers working sources.
The binary is "xterm". It is loaded with sharable libraries, but
has not been stripped.
All of this stuff is on cs.rutgers.edu, in /pub/linux/xterm.tar.Z.
Once I've used it a bit more, I'll upload it to the normal archive
sites.
Does anybody know how to send changes back to MIT? I think the color
support would be generally useful.