Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!linus!decvax!harpo!seismo!hao!hplabs!sri-unix!whm.arizona@Rand-Relay
From: whm.arizona%Rand-Relay@sri-unix.UUCP
Newsgroups: net.emacs
Subject: UniPress vs. CCA
Message-ID: <13542@sri-arpa.UUCP>
Date: Thu, 10-Nov-83 05:30:49 EST
Article-I.D.: sri-arpa.13542
Posted: Thu Nov 10 05:30:49 1983
Date-Received: Sun, 13-Nov-83 17:07:45 EST
Lines: 30

Let's get down to cases here.  What are some tangible differences between
UniPress (aka Gosling's) and CCA (aka Zimmerman's) Emacs?  I use UniPress
Emacs regularly, but have only played with CCA Emacs on a couple of occasions
and while I'm not in a position to make any sort of detailed comments,
I have made a few observations.

It seems that the primary gripe against CCA Emacs is the lack of an embedded
language; are there any other serious complaints?  It appears that CCA
Emacs is much superior to Unipress Emacs from the standpoint of a user
who just wants a nice editor to use and isn't really concerned about being
able to roll-his-own editor functions.  CCA Emacs also seems to win hands-
down with respect to documentation.

How about bug handling?  I sent UniPress a letter to report several bugs that
I had found; their response was merely that they'd add them to the bug list;
no mention of workarounds or possible solutions.  Does CCA do any better?

I've got one specific question about CCA Emacs: Is it possible to establish
key bindings once the editor has started up?  My brief scans of the documen-
tation haven't uncovered a way to do this.

A couple of other things pop to mind:  UniPress Emacs can undo a number of
previous operations; the CCA Emacs manual that I have indicates that only
one change can be undone; is this still the case with CCA Emacs?  Also,
it appears that the CCA Emacs key bindings were designed with META key
terminals in mind.  While it provides workarounds for terminals without
META keys, it would seem that the non-META user is getting the short end
of the stick.

					Bill Mitchell

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!linus!decvax!cca!z
From: z@cca.UUCP (Steve Zimmerman)
Newsgroups: net.emacs
Subject: Re: UniPress vs. CCA
Message-ID: <6112@cca.UUCP>
Date: Sun, 13-Nov-83 11:56:49 EST
Article-I.D.: cca.6112
Posted: Sun Nov 13 11:56:49 1983
Date-Received: Mon, 14-Nov-83 00:55:45 EST
References: sri-arpa.13542
Lines: 44

I think I can provide some answers to Bill Mitchell's questions.

With respect to bug fixes, we consider support to be very important, and
fixing bugs is always a high priority for me.  For those users who wish
to receive bug fixes over the net, all fixes are sent free of charge as
soon as they are available; for all other users, the current list of bug
fixes in printed form is always available for a nominal fee.  Most bugs
have fixes published for them within one business day of when I receive
the bug report, and I would estimate that 95% of all bugs have fixes
published for them within a week.

Customized key bindings can be established by users in one of two ways:
either by specifying the binding in an initialization file so that it
takes effect during every session, or by specifying the binding during
an editing session with the Set Key command, which prompts the user for
the function and the key to which it is to be bound.  Both methods can
be used to bind either built-in functions or user-written keyboard
macros.

The Undo command in CCA EMACS does undo only the most recent change to
the buffer, although like the vi Undo command, it has an alternate form
which can undo the most recent series of changes to a line.  Some of the
power of a multi-stage Undo command is available via the kill ring,
though; the kill ring stores the 16 most recent deleted regions, and
there are simple ways of moving through it to retrieve successively
older deleted regions.

I think the issue of Meta key bindings is more a difference of
terminology than anything else.  For example, in Unipress Emacs the
command to scroll a screenful backward is Escape-V, while in CCA EMACS
it is Meta-V.  In both editors, this command is typed Escape-V on most
ASCII terminals, while it is typed Meta-V on those terminals with Meta
keys.  I chose to stick with the original Meta terminology of MIT EMACS
because there are certain circumstances when it provides an advantage.
For instance, many terminals, such as all of our Z19's, have function
keys which send fixed sequences beginning with Escape.  So that the user
can define what he wants these keys to mean and not have them interfere
with the normal EMACS functions, an init file is set up to make Escape a
new prefix character, and one of the function keys is then deemed to be
a Meta key.  In effect, the Meta terminology keeps the command set from
being tied too much to any particular terminal.

	Steve Zimmerman
	{decvax,linus}!cca!z