[comp.emacs] GNU Emacs on Apollo

lnz@LUCID.COM (Leonard N. Zubkoff) (02/20/91)

A new version of my modifications to GNU Emacs for the Apollo is now available.
This version supports GNU Emacs 18.57, Domain/OS SR10.2 and SR10.3, and the
latest release of the Domain C Compiler.  New features include:

o   Network Graphics Terminal Facility

    The Network Graphics Terminal Facility allows GNU Emacs to use the Apollo
    GPR support on one node's display while the Emacs editor itself runs on
    another machine, which need not even be an Apollo.  Communication between
    the NGT (Network Graphics Terminal) process and GNU Emacs is performed via
    a TCP/IP connection.  This facility is particularly useful when two Apollo
    nodes are able to communicate via TCP/IP but not via DDS (Domain
    Distributed Services) directly, or when you are sitting in front of an
    Apollo display but must run an Emacs on a non-Apollo machine.

    The NGT protocol is optimized for supporting GNU Emacs redisplay and is
    more efficient than the X11 protocols.  In addition, text strings displayed
    via the NGT protocol are fed through a text compressor to minimize the use
    of communication bandwidth; thus NGT will perform much better than X11 when
    the TCP/IP connection is made over a slow link, such as 9.6kb/s or 56kb/s
    leased lines.  Even cut/paste commands are supported with NGT.

o   Building an NFS shared Emacs on non-Apollo Machines

    Even though non-Apollo machines do not support a compound executable format
    that can be executed on multiple machine types, it is possible to invoke
    Emacs from many machine types from a single NFS source area.  This
    distribution includes configuration files for the following machines in
    addition to the Apollo: HP300, HP800, IBM RT, MIPS Ultrix, IBM RISC
    System/6000 (RIOS), Sun2, Sun3, Sun386, Sun4, VAX 4.3bsd, and VAX Ultrix.

New features from the last version of my modifications include:

o   The keyboard management in this version had been updated to use the GPR
    event types GPR_$Coded_Keys, GPR_$Function_Keys, and GPR_$Physical_Keys 
    which are new in SR10.2 and give GNU Emacs access to all the interesting
    key transitions.  For example, the REPEAT key can now be defined to be the
    Meta Key; REPEAT is much more conveniently located than the RIGHT BOX ARROW
    key, and since autorepeat can be enabled for most keys in SR10.2, there is
    little need for a repeat key.  For compatibility, RIGHT BOX ARROW remains
    the default Meta Key.  If you want REPEAT as your Meta Key, you need to add
    the form (select-apollo-meta-key "RPT") to your ".emacs" and the command
    "kbm -R none -A alpha,default" to your ".login" or equivalent.

o   Since Domain/OS SR10.2 supports the X11 window system, the GNU Emacs
    support for X11 and X menus is enabled as well.  When Emacs is invoked from
    a pad and GPR is available, it is preferred over X11 unless the "-display"
    or "-d" command line argument is specified.  When GPR support is being
    used, the Emacs variable window-system has the value 'apollo; when X11 is
    used, it has the value 'x.

o   Domain/OS SR10.1 and Domain/IX SR9.7 are no longer supported.

o   "etc/apollo.el" is now loaded before ".emacs", and hence the variables
    *apollo-key-bindings-hook* and *preempt-display-manager-bindings* are no
    longer available.  Any key bindings formerly made by using
    *apollo-key-bindings-hook* can now be installed directly; you should call
    the function install-apollo-dm-preemptive-key-bindings from your ".emacs" to
    install these key bindings if you formerly set
    *preempt-display-manager-bindings* to T.

I am distributing this release from labrea.stanford.edu (36.8.0.47).  The
following files are available for anonymous ftp from the "pub/gnu" directory:

	APOLLO.README		    README for Apollo GNU Emacs
	apollo-emacs.tar.Z	    Apollo GNU Emacs modifications

As always, to install my Apollo GNU Emacs modifications, uncompress and untar
"apollo-emacs.tar.Z" on top of a unmodified GNU Emacs 18.57 distribution tree,
and consult "APOLLO.README" for building instructions.

Note: There is a bug in SR10.2 tar such that overwritten files are not
necessarily truncated to the proper size.  Before you untar the file under
SR10.2, execute the following commands:

rm README etc/APOLLO etc/MACHINES info/dir lisp/cl-indent.el* lisp/info.el*
rm lisp/lisp-mode.el* lisp/paths.el* lisp/rmail.el* lisp/rnews.el*
rm lisp/server.el* lisp/shell.el* lisp/startup.el* src/Makefile src/crt0.c
rm src/dired.c src/dispnew.c src/emacs.c src/fileio.c src/fns.c src/keyboard.c
rm src/m-apollo.h src/process.c src/sysdep.c src/x11fns.c src/x11term.c
rm src/xdisp.c src/ymakefile

		Leonard N. Zubkoff
		Lucid, Incorporated