From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Kastrup Newsgroups: gmane.emacs.devel Subject: Re: local keymap patch for key-binding Date: Wed, 13 Sep 2006 13:38:48 +0200 Message-ID: <85irjsj8s7.fsf@lola.goethe.zz> References: <87slj1hybl.fsf@stupidchicken.com> <85pse5cbqw.fsf@lola.goethe.zz> <87zmd7yjq4.fsf@furball.mit.edu> <85pse3n99c.fsf@lola.goethe.zz> <87r6yjxh7k.fsf@furball.mit.edu> <85venuc27c.fsf@lola.goethe.zz> <85r6yiivi7.fsf@lola.goethe.zz> <85hczdbdv2.fsf@lola.goethe.zz> <85mz959kkw.fsf@lola.goethe.zz> <85irjs4tda.fsf@lola.goethe.zz> <85ejug4pl4.fsf@lola.goethe.zz> <85k648kwy7.fsf@lola.goethe.zz> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1158147558 16271 80.91.229.2 (13 Sep 2006 11:39:18 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 13 Sep 2006 11:39:18 +0000 (UTC) Cc: cyd@stupidchicken.com, rms@gnu.org, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Sep 13 13:39:16 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1GNT5C-0000Dl-2Q for ged-emacs-devel@m.gmane.org; Wed, 13 Sep 2006 13:39:10 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GNT5B-00078A-IT for ged-emacs-devel@m.gmane.org; Wed, 13 Sep 2006 07:39:09 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1GNT50-000785-Fz for emacs-devel@gnu.org; Wed, 13 Sep 2006 07:38:58 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1GNT4z-000776-0D for emacs-devel@gnu.org; Wed, 13 Sep 2006 07:38:57 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GNT4y-00076z-UO for emacs-devel@gnu.org; Wed, 13 Sep 2006 07:38:56 -0400 Original-Received: from [199.232.76.164] (helo=fencepost.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.52) id 1GNT6g-0007Xg-TX for emacs-devel@gnu.org; Wed, 13 Sep 2006 07:40:43 -0400 Original-Received: from localhost ([127.0.0.1] helo=lola.goethe.zz) by fencepost.gnu.org with esmtp (Exim 4.34) id 1GNT4q-0001fi-PN; Wed, 13 Sep 2006 07:38:49 -0400 Original-Received: by lola.goethe.zz (Postfix, from userid 1002) id 3E7B61C40B5C; Wed, 13 Sep 2006 13:38:48 +0200 (CEST) Original-To: storm@cua.dk (Kim F. Storm) In-Reply-To: (Kim F. Storm's message of "Wed\, 13 Sep 2006 13\:05\:06 +0200") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) 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:59763 Archived-At: storm@cua.dk (Kim F. Storm) writes: > Your patch still looks good to me. Well, I could not witness any adverse effect after some testing, it tracks the behavior of read-key-sequence closely. There is one concern that I have: the type of the "location" argument. This currently is a key sequence. But it might make more sense to turn this into the "location" data structure that `event-start' and/or `event-end' return. This would make it much easier to feed lookup-key with data produced from, say, `posn-at-x-y'. In order to get this data easier, it might make sense to define a convenience function. (defun key-event (key) "Return event from moused-base key sequence KEY." (and (vectorp key) (if (consp (aref key 0)) (aref key 0) (and (symbolp (aref key 0)) (> (length key) 1) (consp (aref key 1)) (aref key 1))))) Maybe even in C, as this function can be executed without consing. I found that the current usage in the help echo fixup stuff does not even have a key sequence to start from, just a mouse position. So it would likely make more sense to rework the location argument type to just be a mouse position. That seems like the most basic unit for this argument that still makes sense. WDYT? -- David Kastrup, Kriemhildstr. 15, 44793 Bochum