From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Stuart D. Herring" Newsgroups: gmane.emacs.devel Subject: Re: `key-binding' and XEmacs-style events Date: Thu, 1 Mar 2007 14:27:55 -0800 (PST) Message-ID: <38667.128.165.123.18.1172788075.squirrel@webmail.lanl.gov> References: <36817.128.165.123.18.1172703473.squirrel@webmail.lanl.gov> Reply-To: herring@lanl.gov NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain;charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: sea.gmane.org 1172788110 14963 80.91.229.12 (1 Mar 2007 22:28:30 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 1 Mar 2007 22:28:30 +0000 (UTC) Cc: rms@gnu.org, emacs-devel@gnu.org To: "Stefan Monnier" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Mar 01 23:28:18 2007 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1HMtl1-0003yR-3u for ged-emacs-devel@m.gmane.org; Thu, 01 Mar 2007 23:28:15 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HMtl0-000538-As for ged-emacs-devel@m.gmane.org; Thu, 01 Mar 2007 17:28:14 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1HMtkp-000533-40 for emacs-devel@gnu.org; Thu, 01 Mar 2007 17:28:03 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1HMtkn-00052p-5t for emacs-devel@gnu.org; Thu, 01 Mar 2007 17:28:02 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HMtkn-00052m-22 for emacs-devel@gnu.org; Thu, 01 Mar 2007 17:28:01 -0500 Original-Received: from mailwasher.lanl.gov ([192.65.95.54] helo=mailwasher-b.lanl.gov) by monty-python.gnu.org with esmtp (Exim 4.52) id 1HMtkj-0003pf-JW; Thu, 01 Mar 2007 17:27:57 -0500 Original-Received: from mailrelay3.lanl.gov (mailrelay3.lanl.gov [128.165.4.104]) by mailwasher-b.lanl.gov (8.13.8/8.13.8/(ccn-5)) with ESMTP id l21MRu8Z017878; Thu, 1 Mar 2007 15:27:56 -0700 Original-Received: from webmail1.lanl.gov (webmail1.lanl.gov [128.165.4.106]) by mailrelay3.lanl.gov (8.13.8/8.13.8/(ccn-5)) with ESMTP id l21MRtYW019441; Thu, 1 Mar 2007 15:27:56 -0700 Original-Received: from webmail1.lanl.gov (localhost.localdomain [127.0.0.1]) by webmail1.lanl.gov (8.12.11.20060308/8.12.11) with ESMTP id l21MRtFE002321; Thu, 1 Mar 2007 15:27:55 -0700 Original-Received: (from apache@localhost) by webmail1.lanl.gov (8.12.11.20060308/8.12.11/Submit) id l21MRtY5002319; Thu, 1 Mar 2007 14:27:55 -0800 X-Authentication-Warning: webmail1.lanl.gov: apache set sender to herring@lanl.gov using -f Original-Received: from 128.165.123.18 (SquirrelMail authenticated user 196434) by webmail.lanl.gov with HTTP; Thu, 1 Mar 2007 14:27:55 -0800 (PST) In-Reply-To: User-Agent: SquirrelMail/1.4.8-2.el3.7lanl X-Priority: 3 (Normal) Importance: Normal X-PMX-Version: 4.7.1.128075 X-detected-kernel: Linux 2.4-2.6 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:67164 Archived-At: >> Obviously (key-binding [?a]) works just as well, but in order to >> write >> code that flexibly manipulates keystrokes it would be nice if the >> XEmacs >> syntax could always be used even in degenerate cases. > >> I agree. Would someone please fix this and ack? > > AFAIK, [?a] works in XEmacs as well. It's only when you have modifiers > that > the Emacs syntax is not understood by XEmacs. We're talking about going the other way -- supporting (key-binding [(?a)]) in Emacs (I don't know what XEmacs thinks of event-lists with no modifiers). The simplest fix seems to be to move the check that the list is at least two long before the code that uses its first element as a symbol: *** keymap.c.~1.345.~ 2007-02-08 09:45:05.000000000 -0700 --- keymap.c 2007-03-01 15:26:32.000000000 -0700 *************** *** 1612,1621 **** /* We are not interested in locations without event data */ ! if (EVENT_HAS_PARAMETERS (event)) { Lisp_Object kind = EVENT_HEAD_KIND (EVENT_HEAD (event)); ! if (CONSP (XCDR (event)) && EQ (kind, Qmouse_click)) position = EVENT_START (event); } } --- 1612,1621 ---- /* We are not interested in locations without event data */ ! if (EVENT_HAS_PARAMETERS (event) && CONSP (XCDR (event))) { Lisp_Object kind = EVENT_HEAD_KIND (EVENT_HEAD (event)); ! if (EQ (kind, Qmouse_click)) position = EVENT_START (event); } } That will still die on (key-binding [(?a ?b)]), but that's meaningless anyway. Davis -- This product is sold by volume, not by mass. If it appears too dense or too sparse, it is because mass-energy conversion has occurred during shipping.