Portability issues --------------------- 16 Sep 1999 Much of the XMLterm code is cross-platform. Implementation features that affect portability at the moment are: 1. Main event handling: By default, the present implementation of XMLterm directly uses a GTK call to set up a handler for XMLterm output events. This can be disabled by setting NO_CALLBACK=1 in the make command line, and calling the method mozIXMLTermShell::Poll() frequently to poll for readable output from LineTerm. (A better event/callback mechanism needs to be implemented.) 2. pseudo-TTY (PTY) operations: The PTY interface for XMLterm is currently implemented only for two platforms, Linux and Solaris. At some point, the PTY interface should be ported to most Unix platforms. On platforms where PTY operations are not implemented, the cross-platform NSPR process mechanism is used to create a "slave" process. However, this process uses NSPR pipes for communication, which prevents the use of terminal control characters such as the most usefule Control-C. (Is there a way around this restriction?) What about Windows? It should be possible to use XMLterm even under Windows, using the NSPR process/pipe functions for communication and using the Cygwin utilities to simulate the Unix environment. 3. The lightweight GeckoTerm uses GTK. 4. The "unistring" module uses wchar functions which do not always have the same names. --