From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Lennart Borgman Newsgroups: gmane.emacs.devel Subject: Re: Function for deleting a key binding in a sparse keymap Date: Mon, 12 Dec 2005 20:09:30 +0100 Message-ID: <439DCAEA.5080204@student.lu.se> References: <3cc04a73cc1b1a.3cc1b1a3cc04a7@net.lu.se> <43987D21.4070200@student.lu.se> <4398C8F2.8060301@student.lu.se> <4399E538.2080909@student.lu.se> <439B688C.1090207@student.lu.se> <439CD53C.1070500@student.lu.se> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------040905010504090201090306" X-Trace: sea.gmane.org 1134422666 22374 80.91.229.2 (12 Dec 2005 21:24:26 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 12 Dec 2005 21:24:26 +0000 (UTC) Cc: storm@cua.dk, monnier@iro.umontreal.ca, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Dec 12 22:24:25 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1Elv82-0004CL-1F for ged-emacs-devel@m.gmane.org; Mon, 12 Dec 2005 22:22:38 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Elv8X-0000Vr-7d for ged-emacs-devel@m.gmane.org; Mon, 12 Dec 2005 16:23:09 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Elt40-00083Z-Bv for emacs-devel@gnu.org; Mon, 12 Dec 2005 14:10:21 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Elt3u-00080e-Sn for emacs-devel@gnu.org; Mon, 12 Dec 2005 14:10:16 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Elt3t-0007zu-F9 for emacs-devel@gnu.org; Mon, 12 Dec 2005 14:10:13 -0500 Original-Received: from [81.228.11.159] (helo=pne-smtpout2-sn1.fre.skanova.net) by monty-python.gnu.org with esmtp (Exim 4.34) id 1Elt5X-0000Jj-D1; Mon, 12 Dec 2005 14:11:55 -0500 Original-Received: from [192.168.123.121] (83.249.218.244) by pne-smtpout2-sn1.fre.skanova.net (7.2.069.1) id 43995FC6000E51BB; Mon, 12 Dec 2005 20:09:31 +0100 User-Agent: Mozilla Thunderbird 1.0.7 (Windows/20050923) X-Accept-Language: en-us, en Original-To: rms@gnu.org In-Reply-To: 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:47561 Archived-At: This is a multi-part message in MIME format. --------------040905010504090201090306 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: Quoted-Printable Richard M. Stallman wrote: >If we want to write it in pseudo-Lisp, this is much >more Lisp-like yet with much less nesting. > > (or (FIND-IN special-event-map) > (if overriding-terminal-local-map > (FIND-IN overriding-terminal-local-map) > (if overriding-local-map > (FIND-IN overriding-local-map) > (or (FIND-IN (KEYMAP-PROPERTY-AT-POINT)) > (FIND-IN-ANY EMULATION-MODE-MAP-ALISTS) > (FIND-IN-ANY minor-mode-overriding-map-alist) > (FIND-IN-ANY minor-mode-map-alist) > (FIND-IN (LOCAL-MAP-PROPERTY-AT-POINT)) > (FIND-IN (current-local-map))))) > (FIND-IN (current-global-map))) > > =20 > I have taken your and Stefan=C2=B4s suggestions and merged it with what I= had=20 previously. It looks better than I expected. I have in this case left=20 out the examples that Kim wanted because I think they will clutter the=20 pseudo-Lisp structure. Maybe these examples fit better in the longer=20 descriptions of the functions and variables in Info? We have slightly different ideas of what this subnode should be for. I=20 believe it serves its main purpose of finding the keymap with a little=20 bit broader picture so I have written a suggestion along that line. I=20 renamed the header to "Finding the keymap and its entry to use" to=20 reflect this a bit. I have attached a the new version. Please try to answer the two=20 questions in there that I do not know the answer of myself! --------------040905010504090201090306 Content-Type: text/plain; name="finding-keymap.texi" Content-Disposition: inline; filename="finding-keymap.texi" Content-Transfer-Encoding: Base64 CkBzdWJzZWN0aW9uIEZpbmRpbmcgdGhlIGtleW1hcCBhbmQgaXRzIGVudHJ5IHRvIHVzZQoK Rmlyc3QgdGhlIGtleWJvYXJkIGlucHV0IGV2ZW50cyBtdXN0IGJlIHRyYW5zbGF0ZWQgKEBw eHJlZntUcmFuc2xhdGluZwpJbnB1dH0pLiAgVGhpcyBpcyBkb25lIGluIHR3byBzdGVwcywg Zmlyc3QgY2hhcmFjdGVyIHRyYW5zbGF0aW9uIGFuZAp0aGVuIGtleSBzZXF1ZW5jZSB0cmFu c2xhdGlvbjoKCkBpdGVtaXplIEBidWxsZXQKQGl0ZW0KVGhlIGNoYXJhY3RlciB0cmFuc2xh dGlvbiBpcyBkb25lIGluIHRocmVlIHNlcXVlbnRpYWwgc3RlcHMgdXNpbmcKQGNvZGV7ZXh0 cmEta2V5Ym9hcmQtbW9kaWZpZXJzfSwgQGNvZGV7a2V5Ym9hcmQtdHJhbnNsYXRlLXRhYmxl fSBhbmQKQGNvZGV7bWV0YS1wcmVmaXgtY2hhcn0uCgpAaXRlbQpLZXkgc2VxdWVuY2UgdHJh bnNsYXRpb246IEtleWJvYXJkIGV2ZW50IGF0IHRoaXMgc3RhZ2UgdGhhdCBoYXMgbm90Cnll dCBiZWVuIG1hcHBlZCB0byBhIGtleW1hcCBhcmUga2VwdCBpbiBhIHF1ZXVlLiAgVGhlIHN1 YnNlcXVlbmNlcyBpbgp0aGlzIHF1ZXVlIGFyZSBjaGVja2VkIGFuZCBtYXkgYmUgdHJhbnNm b3JtZWQgYnkgdGhlIHRhYmxlcyBpbgpAY29kZXtmdW5jdGlvbi1rZXktbWFwfSBhbmQgQGNv ZGV7a2V5LXRyYW5zbGF0aW9uLW1hcH0uICBOb3RlIHRoYXQKdGhpcyByZXF1aXJlcyBhIGxv b2sgYWhlYWQgaW4gdGhlIGtleW1hcHMgaW4gdGhlIG9yZGVyIGRlc2NyaWJlZApiZWxvdy4K QGVuZCBpdGVtaXplCgooQHN0cm9uZ3tzcGVjaWFsLWV2ZW4tbWFwIGlzIG1pc3NpbmcgYWJv dmUgeWV0ISEhfSkKCkFmdGVyIHRoZSB0cmFuc2xhdGlvbnMgYWJvdmUgRW1hY3MgbG9va3Mg aW4gdGhlIGFjdGl2ZSBrZXltYXBzIGZvciBhCm1hdGNoLiAgQXMgc29vbiBhcyBhIG1hdGNo IGlzIGZvdW5kIChzZWUgQHB4cmVme0tleSBMb29rdXB9KSB0aGVuIGlmCnRoZSBrZXltYXAg ZW50cnkgaXMgYSBmdW5jdGlvbiB0aGUgc2VhcmNoIGlzIG92ZXIuICBIb3dldmVyIGlmIHRo ZQprZXltYXAgZW50cnkgaXMgYSB2YXJpYWJsZSBzeW1ib2wgb3IgYSBzdHJpbmcgdGhlbiBF bWFjcyByZXBsYWNlcyB0aGUKaW5wdXQga2V5IHNlcXVlbmNlcyB3aXRoIHRoZSB2YXJpYWJs ZSBzeW1ib2wgdmFsdWUgb3IgdGhlIHN0cmluZyBhbmQKcmVzdGFydHMgc2VhcmNoaW5nIGlu IHRoZSBhY3RpdmUga2V5bWFwcy4KClRoZSBrZXltYXAgZW50cnkgY291bGQgYWxzbyBiZSBh IGtleW1hcC4gIEluIHRoYXQgY2FzZSB0aGUgbmV4dCBldmVudAppcyBsb29rZWQgdXAgaW4g dGhhdCBrZXltYXAuICAKCihAc3Ryb25ne0J1dCB3aGF0IGhhcHBlbnMgaWYgdGhlcmUgaXMg bm8gaGl0IHRoZXJlLCBJIGNhbiBub3QgZmluZCBhbnkKZG9jdW1lbnRhdGlvbiBvbiB0aGlz Pz8/fSkKCkhlcmUgaXMgYSBQc2V1ZG8tTGlzcCBkZXNjcmlwdGlvbiBvZiB0aGUgb3JkZXIg aW4gd2hpY2ggdGhlIGFjdGl2ZSBrZXltYXBzIGFyZSBzZWFyY2hlZDoKCkBsaXNwCihvciAo aWYgb3ZlcnJpZGluZy10ZXJtaW5hbC1sb2NhbC1tYXAKICAgICAgICAoRklORC1JTiBvdmVy cmlkaW5nLXRlcm1pbmFsLWxvY2FsLW1hcCkKICAgICAgKGlmIG92ZXJyaWRpbmctbG9jYWwt bWFwCiAgICAgICAgICAoRklORC1JTiBvdmVycmlkaW5nLWxvY2FsLW1hcCkKICAgICAgICAo b3IgKEZJTkQtSU4gKGdldC10ZXh0LXByb3BlcnR5IChwb2ludCkgJ2tleW1hcCkpCiAgICAg ICAgICAgIChGSU5ELUlOLUFOWSBlbXVsYXRpb24tbW9kZS1tYXAtYWxpc3RzKQogICAgICAg ICAgICAoRklORC1JTi1BTlkgbWlub3ItbW9kZS1vdmVycmlkaW5nLW1hcC1hbGlzdCkKICAg ICAgICAgICAgKEZJTkQtSU4tQU5ZIG1pbm9yLW1vZGUtbWFwLWFsaXN0KQogICAgICAgICAg ICAoRklORC1JTiAoZ2V0LXRleHQtcHJvcGVydHkgKHBvaW50KSAnbG9jYWwtbWFwKSkKICAg ICAgICAgICAgKEZJTkQtSU4gKGN1cnJlbnQtbG9jYWwtbWFwKSkpKSkKICAgIChGSU5ELUlO IChjdXJyZW50LWdsb2JhbC1tYXApKSkKQGVuZCBsaXNwCgpAbm9pbmRlbnQKVGhlIEZJTkQt SU4gYW5kIEZJTkQtSU4tQU5ZIGFyZSBwc2V1ZG8gZnVuY3Rpb25zIHRoYXQgc2VhcmNoZXMg aW4gb25lCmtleW1hcCByZXNwZWN0aXZlbHkgYW4gYWxpc3Qgb2Yga2V5bWFwcy4KCkBub2lu ZGVudApAc3Ryb25ne1JlbWFyayAxOn0gV2hlbiBFbWFjcyBmaW5hbGx5IGZpbmQgYSBmdW5j dGlvbiBzeW1ib2wgdGhyb3VnaAp0aGlzIHByb2Nlc3MgaXQgYWxzbyBjaGVja3MgZm9yIGNv bW1hbmQgcmVtYXBwaW5nIChAcHhyZWZ7UmVtYXBwaW5nCkNvbW1hbmRzfSkuICBUaGlzIGp1 c3QgcmVwbGFjZXMgdGhlIGZ1bmN0aW9uIHN5bWJvbCB3aXRoIGFub3RoZXIuICBJdAppcyBu b3QgcmVjdXJzaXZlLgoKQG5vaW5kZW50CkBzdHJvbmd7UmVtYXJrIDI6fSBDaGFyYWN0ZXJz IHRoYXQgYXJlIGJvdW5kIHRvCkBjb2Rle3NlbGYtaW5zZXJ0LWNvbW1hbmR9IGFyZSB0cmFu c2xhdGVkIGFjY29yZGluZyB0bwpAY29kZXt0cmFuc2xhdGlvbi10YWJsZS1mb3ItaW5wdXR9 IGJlZm9yZSBpbnNlcnRpb24uCgpAbm9pbmRlbnQKQHN0cm9uZ3tSZW1hcmsgMzp9IFlvdSBt YXkgZmluZCB0aGUgZnVuY3Rpb24KQGNvZGV7Y3VycmVudC1hY3RpdmUtbWFwc30gdXNlZnVs IHdoZW4gbG9va2luZyBpbnRvIHRoaXMuCg== --------------040905010504090201090306 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel --------------040905010504090201090306--