From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: Assignment of misc packages for emacs Date: Sun, 9 Jun 2002 09:19:01 -0600 (MDT) Sender: emacs-devel-admin@gnu.org Message-ID: <200206091519.g59FJ1100238@aztec.santafe.edu> References: <200205050534.g455YfF01634@aztec.santafe.edu> <5xbsbumexh.fsf@kfs2.cua.dk> <200205141941.g4EJfud15293@aztec.santafe.edu> <5xvg9qmgzt.fsf@kfs2.cua.dk> <200205151927.g4FJRRW26103@rum.cs.yale.edu> <5x3cwr4q7m.fsf@kfs2.cua.dk> <87g00rd74y.fsf@tc-1-100.kawasaki.gol.ne.jp> <87sn4otknt.fsf@tc-1-100.kawasaki.gol.ne.jp> <200205191441.g4JEfMg23080@rum.cs.yale.edu> <200205202134.g4KLYHj26031@aztec.santafe.edu> <200205222227.g4MMRIX29393@aztec.santafe.edu> <87g0030xah.fsf@tc-1-100.kawasaki.gol.ne.jp> <200206061204.g56C4qf24692@aztec.santafe.edu> <87r8jka8bm.fsf@tc-1-100.kawasaki.gol.ne.jp> <200206072323.g57NNXU27361@aztec.santafe.edu> <87sn3ypg7b.fsf@tc-1-100.kawasaki.gol.ne.jp> Reply-To: rms@gnu.org NNTP-Posting-Host: localhost.gmane.org X-Trace: main.gmane.org 1023636109 15385 127.0.0.1 (9 Jun 2002 15:21:49 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sun, 9 Jun 2002 15:21:49 +0000 (UTC) Cc: monnier+gnu/emacs@RUM.cs.yale.edu, storm@cua.dk, emacs-devel@gnu.org Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.33 #1 (Debian)) id 17H4Vp-000402-00 for ; Sun, 09 Jun 2002 17:21:49 +0200 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17H4sE-0004WK-00 for ; Sun, 09 Jun 2002 17:44:58 +0200 Original-Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org) by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian)) id 17H4VC-0002f1-00; Sun, 09 Jun 2002 11:21:10 -0400 Original-Received: from pele.santafe.edu ([192.12.12.119]) by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian)) id 17H4T9-0002Pm-00; Sun, 09 Jun 2002 11:19:03 -0400 Original-Received: from aztec.santafe.edu (aztec [192.12.12.49]) by pele.santafe.edu (8.11.6+Sun/8.11.6) with ESMTP id g59FJ2Q20288; Sun, 9 Jun 2002 09:19:02 -0600 (MDT) Original-Received: (from rms@localhost) by aztec.santafe.edu (8.10.2+Sun/8.9.3) id g59FJ1100238; Sun, 9 Jun 2002 09:19:01 -0600 (MDT) X-Authentication-Warning: aztec.santafe.edu: rms set sender to rms@aztec using -f Original-To: miles@gnu.org In-Reply-To: <87sn3ypg7b.fsf@tc-1-100.kawasaki.gol.ne.jp> (message from Miles Bader on 08 Jun 2002 13:06:16 +0900) Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.9 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:4663 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:4663 It seems to use _multiple_ keymaps (the MAPS and NMAPS parameters), which it merges to get all the menu entries. Can any explain in what situation you end up with multiple keymaps that need to be merged like this? If the same prefix has bindings in the local map and the global map (and maybe in minor mode maps), those bindings are all keymaps, and they ought to be merged. Should the lisp function be passed a list of keymaps? That would be ok, or you could merge them in the C code and pass one combined keymap. 1) something to iterate over the keymaps E.g. perhaps (dobindings (VAR KEYMAP [PREDICATE]) BODY..) That seems like a useful idea. How about taking a look at what XEmacs has and considering making this compatible? 2) accessor functions of some sort for the tricky bits That might be a good idea, but it also carries the risk of making a simple thing very heavyweight. I'm not sure what would be better though, a bunch of individual accessor functions, e.g., (menu-item-help MENU-ITEM), or one big accessor function like (menu-item-property MENU-ITEM :help). Two functions, menu-item-property and menu-item-properties, would make it easy to do the whole thing in a fairly lightweight way. But it really depends on comparing two complete proposals to see how heavy each one is.