Mx and Tx

by John Ousterhout
University of California at Berkeley

Mx is a mouse-based editor for the X window system.  It is based on the
Tcl command language, and on the Sx toolkit (a toolkit I originally built
for X10 and then ported quickly and dirtily to X11).

Tx is a terminal emulator that is compatible with Mx (same selection
mechanism, same look and feel, etc.).  There are also two other programs
available in this directory, Txcmd and Txinfo, which are useful if you
use Tx.

Manual entries exist for each of these four programs.  Print the man
pages using your own favorite flavor troff with no macros, e.g.:

		ditroff mx.man

(the manual entries source their own macro file).  The easiest way to
learn how to use Mx is just to invoke it with no arguments:  you'll
start out editing a tutorial that explains how to use the program.

To make runnable versions of all of these programs, follow the instructions
at the front of Makefile, then type "make".

Although I can't promise much in the way of support, I'd be interested to
hear any comments you have about any of these programs (both positive and
negative), and in some cases I may be able to provide help fixing bugs.
Send mail to me at "ouster@sprite.berkeley.edu".

********************** NOTES FOR VERSION 2.5 **********************

Version 2.5 of mx and tx support the X selection mechanism.  This was
done by ripping out the selection code from the Tk toolkit and grafting
it onto the sx library. The result isn't pretty but it works. Eventually
mx and tx will be rewritten using the Tk/Tcl and all of this will be
thrown out anyway.

Caveats:  
    The INCR-style of sending and receiving selections is not supported.
    This means that mx and tx can't deal with big selections. The default
    maximum is 256KB. You can change this by changing the definition of
    TK_SEL_BYTES_AT_ONCE in the file sx/tkSelect.c. 

Notes on building mx and tx:

    If your system has alloca.h (sunOS) then delete or rename the 
    alloca.h file in the distribution. 


John Hartman, jhh@sprite.berkeley.edu


