From xemacs-m  Thu Jun 12 04:16:38 1997
Received: from mgate.uni-hannover.de (mgate.uni-hannover.de [130.75.2.3])
	by xemacs.org (8.8.5/8.8.5) with SMTP id EAA21345;
	Thu, 12 Jun 1997 04:16:25 -0500 (CDT)
Received: from helios (actually helios.tnt.uni-hannover.de) by mgate 
          with SMTP (PP); Thu, 12 Jun 1997 11:15:27 +0200
Received: from daedalus.tnt.uni-hannover.de by helios (SMI-8.6/SMI-SVR4) 
          id LAA21520; Thu, 12 Jun 1997 11:15:07 +0200
Received: by daedalus.tnt.uni-hannover.de (SMI-8.6/SMI-SVR4) id LAA15706;
          Thu, 12 Jun 1997 11:15:05 +0200
Date: Thu, 12 Jun 1997 11:15:05 +0200
Message-Id: <199706120915.LAA15706@daedalus.tnt.uni-hannover.de>
From: Heiko Muenkel <muenkel@tnt.uni-hannover.de>
To: steve@xemacs.org
Cc: acs@acm.org, xemacs-beta@xemacs.org
Subject: Re: Bug in x-compose.el - Fixed!
In-Reply-To: <m2ena96lfr.fsf@altair.xemacs.org>
References: <199706041436.QAA03948@daedalus.tnt.uni-hannover.de> <m2hgfdhmoe.fsf@altair.xemacs.org> <199706061105.NAA03515@daedalus.tnt.uni-hannover.de> <199706111512.RAA15413@daedalus.tnt.uni-hannover.de> <m2ena96lfr.fsf@altair.xemacs.org>
X-Mailer: VM 6.22 under 19.15p5 XEmacs Lucid
X-Face: n}R'l6CHRf>pi&bj7[x0CW3:kmXm@1)7m+l*9[fp;-Ow4Xe~=5E;skf?2> 
        y]f{HzB|Q(\V9+y$PP~.4G[2n4W7{6Ilm[AMY9B:0kj.K_$-d%p4YIF*bX;=ADp6{ 
        HS@NEv9c.VII+9PgXHASx}K(jy^t=q%qzZ72q1e4E;O!$A$`&wgtLk"1%p.nC_G!] 
        4d1!+J4Q#YD_iXeEy`1x)d\r$1Qn\'23n|[8Y_xzuXJJ7W(EGqnzB]`]aq??;+z=) 
        DW~\'Vq&F'g%QU[Mv2:}nS>SdZFTEC2GsgB=Q,:~H<R5S[:ZN%B:s0;|v1x"Jb
Mime-Version: 1.0 (generated by tm-edit 7.106)
Content-Type: text/plain; charset=US-ASCII

Here is the patch for the XEmacs 19.15p5:

*** lisp/x11/x-compose.el.orig	Sat Jan 11 23:10:37 1997
--- lisp/x11/x-compose.el	Wed Jun 11 17:16:24 1997
***************
*** 18,23 ****
--- 18,24 ----
  ;; Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  
  ;;; created by jwz, 14-jun-92.
+ ;;; changed by Heiko Muenkel, 11-jun-97: Fixed the degree bug.
  
  ;;; This file implements DEC-, OpenWindows-, and HP-compatible "Compose"
  ;;; processing for XEmacs.  
***************
*** 102,107 ****
--- 103,115 ----
  ;;;this doesn't work yet###autoload
  (define-key global-map [multi-key]	'compose-key)
  
+ ;; The following is necessary, because one can't rebind [degree]
+ ;; and use it to insert the degree sign!
+ (defun compose-insert-degree ()
+   "Inserts a degree sign."
+   (interactive)
+   (insert ?\260))
+ 
  ;; The "Dead" keys:
  ;;
  (define-key global-map [acute]		compose-acute-map)
***************
*** 322,328 ****
  (define-key compose-circumflex-map "!"	[brokenbar])
  (define-key compose-circumflex-map "-"	[macron])
  (define-key compose-circumflex-map "_"	[macron])
! (define-key compose-circumflex-map "0"	[degree])
  (define-key compose-circumflex-map "1"	[onesuperior])
  (define-key compose-circumflex-map "2"	[twosuperior])
  (define-key compose-circumflex-map "3"	[threesuperior])
--- 330,336 ----
  (define-key compose-circumflex-map "!"	[brokenbar])
  (define-key compose-circumflex-map "-"	[macron])
  (define-key compose-circumflex-map "_"	[macron])
! (define-key compose-circumflex-map "0"	'compose-insert-degree)
  (define-key compose-circumflex-map "1"	[onesuperior])
  (define-key compose-circumflex-map "2"	[twosuperior])
  (define-key compose-circumflex-map "3"	[threesuperior])
***************
*** 348,354 ****
  (define-key compose-tilde-map "o"	[otilde])
  
  (set-keymap-name compose-ring-map 'compose-ring-map)
! (define-key compose-ring-map " "	[degree])
  (define-key compose-ring-map "A"	[Aring])
  (define-key compose-ring-map "a"	[aring])
  
--- 356,362 ----
  (define-key compose-tilde-map "o"	[otilde])
  
  (set-keymap-name compose-ring-map 'compose-ring-map)
! (define-key compose-ring-map " "	'compose-insert-degree)
  (define-key compose-ring-map "A"	[Aring])
  (define-key compose-ring-map "a"	[aring])
  
***************
*** 363,369 ****
  (define-key compose-map " ~"	"~")
  (define-key compose-map "  "	[nobreakspace])
  (define-key compose-map " \""	[diaeresis])
! (define-key compose-map " *"	[degree])
  
  (define-key compose-map "!!"	[exclamdown])
  (define-key compose-map "!^"	[brokenbar])
--- 371,377 ----
  (define-key compose-map " ~"	"~")
  (define-key compose-map "  "	[nobreakspace])
  (define-key compose-map " \""	[diaeresis])
! (define-key compose-map " *"	'compose-insert-degree)
  
  (define-key compose-map "!!"	[exclamdown])
  (define-key compose-map "!^"	[brokenbar])
***************
*** 417,423 ****
  (define-key compose-map "0c"	[copyright])
  (define-key compose-map "0R"	[registered])
  (define-key compose-map "0r"	[registered])
! (define-key compose-map "0^"	[degree])
  
  (define-key compose-map "1^"	[onesuperior])
  (define-key compose-map "14"	[onequarter])
--- 425,431 ----
  (define-key compose-map "0c"	[copyright])
  (define-key compose-map "0R"	[registered])
  (define-key compose-map "0r"	[registered])
! (define-key compose-map "0^"	'compose-insert-degree)
  
  (define-key compose-map "1^"	[onesuperior])
  (define-key compose-map "14"	[onequarter])

