From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: storm@cua.dk (Kim F. Storm) Newsgroups: gmane.emacs.devel Subject: Re: File modes facilities. Date: Tue, 25 Oct 2005 00:14:10 +0200 Message-ID: References: <87hdbdxo94.fsf@mahaena.lrde> <877jc92o37.fsf@mahaena.lrde> <17238.50816.352274.312799@kahikatea.snap.net.nz> <87u0fd9let.fsf@mahaena.lrde> <87oe5jmu9j.fsf-monnier+emacs@gnu.org> <87y84n81q2.fsf@mahaena.lrde> <87slur9e3f.fsf-monnier+emacs@gnu.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1130192276 3366 80.91.229.2 (24 Oct 2005 22:17:56 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 24 Oct 2005 22:17:56 +0000 (UTC) Cc: rms@gnu.org, schwab@suse.de, michael.cadilhac-@t-lrde.epita.fr, emacs-devel@gnu.org, eliz@gnu.org, snogglethorpe@gmail.com, miles@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Oct 25 00:17:47 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1EUAcL-00086X-Iz for ged-emacs-devel@m.gmane.org; Tue, 25 Oct 2005 00:16:35 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1EUAcK-0008Em-RF for ged-emacs-devel@m.gmane.org; Mon, 24 Oct 2005 18:16:32 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1EUAbZ-00085b-KF for emacs-devel@gnu.org; Mon, 24 Oct 2005 18:15:45 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1EUAbX-00084z-Q7 for emacs-devel@gnu.org; Mon, 24 Oct 2005 18:15:45 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1EUAbX-00084u-LX for emacs-devel@gnu.org; Mon, 24 Oct 2005 18:15:43 -0400 Original-Received: from [195.41.46.237] (helo=pfepc.post.tele.dk) by monty-python.gnu.org with esmtp (Exim 4.34) id 1EUAas-0002pA-3C; Mon, 24 Oct 2005 18:15:02 -0400 Original-Received: from kfs-l.imdomain.dk.cua.dk (0x503e2644.bynxx3.adsl-dhcp.tele.dk [80.62.38.68]) by pfepc.post.tele.dk (Postfix) with SMTP id 4F78226283E; Tue, 25 Oct 2005 00:15:00 +0200 (CEST) Original-To: Stefan Monnier In-Reply-To: <87slur9e3f.fsf-monnier+emacs@gnu.org> (Stefan Monnier's message of "Mon, 24 Oct 2005 10:46:05 -0400") 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:44768 Archived-At: Stefan Monnier writes: >> Below is a _much_better_ patch which allows ANY function to have its >> interactive specification overridden, and consequently you can make >> any function into a command. > > Indeed, this is much better. > The only problem I still see with it is that it interacts poorly > with aliases. Given your examples, I'd say that it's a feature rather than a bug :-) But admittedly, I didn't think about aliases. But there is a way to get the best of both approaches: Suppose A is an alias for C. Now, if A has overriding interactive spec, use that. Else if C has overriding interactive spec, use that. Else use original interactive spec for C (if any). So this would actually work: > (defalias 'load-library 'load "docstring") > (defalias 'load-file 'load "other docstring") > (put 'load-library 'interactive '(...)) > (put 'load-file 'interactive '(...)) -- Kim F. Storm http://www.cua.dk