From xemacs-m  Fri Aug 29 05:06:11 1997
Received: from mercury.Sun.COM (mercury.Sun.COM [192.9.25.1])
	by xemacs.org (8.8.5/8.8.5) with SMTP id FAA23307
	for <xemacs-beta@xemacs.org>; Fri, 29 Aug 1997 05:06:10 -0500 (CDT)
Received: from Eng.Sun.COM ([129.146.1.25]) by mercury.Sun.COM (SMI-8.6/mail.byaddr) with SMTP id DAA01773 for <xemacs-beta@xemacs.org>; Fri, 29 Aug 1997 03:05:40 -0700
Received: from kindra.eng.sun.com by Eng.Sun.COM (SMI-8.6/SMI-5.3)
	id DAA28764; Fri, 29 Aug 1997 03:05:38 -0700
Received: from xemacs.eng.sun.com by kindra.eng.sun.com (SMI-8.6/SMI-SVR4)
	id DAA15325; Fri, 29 Aug 1997 03:05:36 -0700
Received: by xemacs.eng.sun.com (SMI-8.6/SMI-SVR4)
	id DAA21131; Fri, 29 Aug 1997 03:05:35 -0700
Date: Fri, 29 Aug 1997 03:05:35 -0700
Message-Id: <199708291005.DAA21131@xemacs.eng.sun.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
From: Martin Buchholz <mrb@Eng.Sun.COM>
To: XEmacs Beta Test <xemacs-beta@xemacs.org>
Subject: Martin's WochenPatsch for 20.3
X-Mailer: VM 6.33 under 20.3 "Vienna" XEmacs  Lucid (beta14)
Reply-To: Martin Buchholz <mrb@Eng.Sun.COM>

This week's megapatch adds the long-delayed C/C++ compilability
changes, various key handling changes, and a random assortment of bug
fixes.

There is one major performance imprrovement in this patch, that is
mostly due to Ben's insight.

The entire key handling infrastructure is buggy, and I'd like to fix
it, but I won't have the time for a while.

I added this comment to event-stream.c:


/* TODO:
   This stuff is way too hard to maintain - needs rework.

   (global-set-key "\C-p" global-map) causes a crash - need recursion check.

   C-x @ h <scrollbar-drag> x causes a crash.

   The command builder should deal only with key and button events.
   Other command events should be able to come in the MIDDLE of a key
   sequence, without disturbing the key sequence composition, or the
   command builder structure representing it.

   Someone should rethink univeral-argument and figure out how an
   arbitrary command can influence the next command (universal-argument
   or univeral-coding-system-argument) or the next key (hyperify).

   Both C-h and Help in the middle of a key sequence should trigger
   prefix-help-command.  help-char is stupid.  Maybe we need
   keymap-of-last-resort?

   After prefix-help is run, one should be able to CONTINUE TYPING,
   instead of RETYPING, the key sequence.
 */

Jan: Please criticize the changes to x-compose.  I think we're agreed
on the status of 19.16.

Steve:  I promise, this is my last pervasive code change (for a while).

Heiko:  I removed your special handling of the degree keysym in
x-compose.el.  I don't see why it's needed, and if it is, it belongs
elsewhere.

1997-08-28  Martin Buchholz  <mrb@eng.sun.com>

	* lisp/prim/files.el (find-file-noselect): BUG FIX:
	(find-file) fails on symlink to version-controlled file


1997-08-25  Martin Buchholz  <mrb@eng.sun.com>

	* lisp/prim/keymap.el (event-apply-modifier): Implement
	fsfmacs-style event-apply-*-modifier interface.

	* configure.in: HAVE_XMU was never being defined.

	* *.[ch]: Enable compilation by C++ compilers - mega change
	* src/*.c: Various obscure memory corruptions fixed.

	* lisp/cl/cl-macs.el: ignore-errors shouldn't create a gensym
	* lisp/prim/help.el: print arguments for describe-key, just like
	describe-function
	- use prin1 instead of princ when printing lisp commands.
	- print function-key-map from prefix-help-command.
	* lisp/x11/x-*.el: try to fix x key composition without penalizing 
	those Ignorant Uni-lingual Americans.
	* src/keymap.c: try to fix keymap autoloading.

	* src/mule-coding.c: Dramatic mule performance improvements.
	- Avoid generating garbage when doing stream conversions.

