From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.devel Subject: Re: Shift selection using interactive spec Date: Thu, 27 Mar 2008 02:49:07 +0200 Organization: JURTA Message-ID: <878x050yp0.fsf@jurta.org> References: <87k5k69p92.fsf@stupidchicken.com> <87od9gzqv9.fsf@stupidchicken.com> <87bq5gytbi.fsf@stupidchicken.com> <8763vndi0r.fsf@kfs-lx.rd.rdm> <87hcf6ratt.fsf@stupidchicken.com> <878x0if9ul.fsf@stupidchicken.com> <87od9e9gnx.fsf@stupidchicken.com> <87skyo5bvk.fsf@stupidchicken.com> <87skynrin5.fsf@stupidchicken.com> <87iqzju0lq.fsf@kfs-lx.rd.rdm> <851w5xx5ya.fsf@lola.goethe.zz> <87ve3993dt.fsf@jurta.org> <47EA37C7.7080502@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1206581079 4839 80.91.229.12 (27 Mar 2008 01:24:39 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 27 Mar 2008 01:24:39 +0000 (UTC) Cc: jared@hpalace.com, "Lennart Borgman \(gmail\)" , emacs-devel@gnu.org To: rms@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Mar 27 02:25:09 2008 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 1Jegrd-0002cE-7O for ged-emacs-devel@m.gmane.org; Thu, 27 Mar 2008 02:25:09 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Jegr1-0007eH-L9 for ged-emacs-devel@m.gmane.org; Wed, 26 Mar 2008 21:24:31 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Jegpq-00076e-N5 for emacs-devel@gnu.org; Wed, 26 Mar 2008 21:23:18 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Jegpo-00075o-Ta for emacs-devel@gnu.org; Wed, 26 Mar 2008 21:23:18 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Jegpo-00075c-NE for emacs-devel@gnu.org; Wed, 26 Mar 2008 21:23:16 -0400 Original-Received: from relay02.kiev.sovam.com ([62.64.120.197]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Jegpl-0007XM-4C; Wed, 26 Mar 2008 21:23:13 -0400 Original-Received: from [83.170.232.243] (helo=smtp.svitonline.com) by relay02.kiev.sovam.com with esmtp (Exim 4.67) (envelope-from ) id 1Jegpe-0009zq-S1; Thu, 27 Mar 2008 03:23:11 +0200 In-Reply-To: (Richard Stallman's message of "Wed, 26 Mar 2008 18:26:14 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (x86_64-pc-linux-gnu) X-Scanner-Signature: d0b3bc0b24c4067239780ad28ae5b444 X-DrWeb-checked: yes X-SpamTest-Envelope-From: juri@jurta.org X-SpamTest-Group-ID: 00000000 X-SpamTest-Header: Not Detected X-SpamTest-Info: Profiles 2455 [Mar 21 2008] X-SpamTest-Info: helo_type=3 X-SpamTest-Info: {HEADERS: header Content-Type found without required header Content-Transfer-Encoding} X-SpamTest-Method: none X-SpamTest-Rate: 11 X-SpamTest-Status: Not detected X-SpamTest-Status-Extended: not_detected X-SpamTest-Version: SMTP-Filter Version 3.0.0 [0278], KAS30/Release X-detected-kernel: by monty-python.gnu.org: FreeBSD 6.x (1) 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:93596 Archived-At: > I think that `interactive' codes are much better than symbol properties > for defining the meaning of a command. > > When the `interactive' spec is a Lisp expression, that expression > can call a suitably provided function to do the job. According to the documentation, the `interactive' spec tells `call-interactively' how to read arguments to pass to the function. There is one exception that is not used to read arguments: if the string begins with `*' then an error is signaled if the buffer is read-only. Since when the buffer is read-only, the command is unable to operate on the buffer any way, it makes no sense for the user to want to modify this behavior. OTOH, shift-selection doesn't tell how to read arguments, It even doesn't define the meaning of a command. It specifies the behavior of a separate optional feature invoked before the command call (in this case to set the mark before the command call). Moreover, the user might want to disable this feature for some commands or enable it for some commands. Modifying the `interactive' spec of a set of commands in .emacs would be a big burden for the user. But changing their properties in .emacs is very easy as users already do for cua-selection-mode. -- Juri Linkov http://www.jurta.org/emacs/