From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: M Jared Finder Newsgroups: gmane.emacs.devel Subject: Re: Shift selection using interactive spec Date: Tue, 18 Mar 2008 21:40:55 -0700 Message-ID: References: <87k5k69p92.fsf@stupidchicken.com> <200803140408.m2E47hPU014494@sallyv1.ics.uci.edu> <87prtxpekk.fsf@kfs-lx.rd.rdm> <87abl11ilo.fsf@stupidchicken.com> <874pb9koyw.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> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1205901688 16279 80.91.229.12 (19 Mar 2008 04:41:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 19 Mar 2008 04:41:28 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Mar 19 05:41:58 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 1Jbq7h-0007rO-L9 for ged-emacs-devel@m.gmane.org; Wed, 19 Mar 2008 05:41:58 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Jbq77-0007UM-HU for ged-emacs-devel@m.gmane.org; Wed, 19 Mar 2008 00:41:21 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Jbq71-0007To-1J for emacs-devel@gnu.org; Wed, 19 Mar 2008 00:41:15 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Jbq6z-0007TI-VV for emacs-devel@gnu.org; Wed, 19 Mar 2008 00:41:14 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Jbq6z-0007TC-Jl for emacs-devel@gnu.org; Wed, 19 Mar 2008 00:41:13 -0400 Original-Received: from main.gmane.org ([80.91.229.2] helo=ciao.gmane.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Jbq6y-0004X4-Vn for emacs-devel@gnu.org; Wed, 19 Mar 2008 00:41:13 -0400 Original-Received: from list by ciao.gmane.org with local (Exim 4.43) id 1Jbq6t-0000MN-3Y for emacs-devel@gnu.org; Wed, 19 Mar 2008 04:41:07 +0000 Original-Received: from adsl-76-247-47-30.dsl.pltn13.sbcglobal.net ([76.247.47.30]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 19 Mar 2008 04:41:07 +0000 Original-Received: from jared by adsl-76-247-47-30.dsl.pltn13.sbcglobal.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 19 Mar 2008 04:41:07 +0000 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 56 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: adsl-76-247-47-30.dsl.pltn13.sbcglobal.net User-Agent: Mozilla-Thunderbird 2.0.0.9 (X11/20080109) In-Reply-To: <87iqzju0lq.fsf@kfs-lx.rd.rdm> X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) 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:92960 Archived-At: Kim F. Storm wrote: > Stefan Monnier writes: > >>> To fix this bug, we would have to change the external package. >> Yup. We have to fix it anyway in order for the shift to start the selection. > > That's the beauty of CUA's command property approach - you can fix > it simply by setting a property on the problematic commands in > your own .emacs -- no need to mess inside the source code. > > And it is the same for the delete-selection feature -- you can > make external packages delete-selection aware simply by setting > a suitable property. > > I.e. if someone complaints that package xxx doesn't work, it is > much easier to tell them to "add these two lines to your .emacs" > rather than "you need to find file xxx.el and edit the interactive > spec of commands xxx-forward and xxx-backward, and then byte-compile > the file". > > But I've given up already - it seems that most people making decisions > on this issue don't use shift-select or delete-selection themselves, > and they are not interested in listening to those who use it and have > proven experience in implementing it (and having spent a lot of time > making it work very well). > As an honest-to-god USER of Emacs, I want to say I completely agree with Kim, here. Since I discovered cua-mode, I've had the following code in my .emacs: > (let ((move-fns '(c-forward-conditional c-backward-conditional > c-down-conditional c-up-conditional > c-down-conditional-with-else > c-up-conditional-with-else > c-beginning-of-statement c-end-of-statement))) > (require 'cua-base) > (dolist (symbol move-fns) > (unless (eq 'move (get symbol 'CUA)) > (display-warning 'emacs (format "Adding CUA property to `%s'." symbol)) > (setf (get symbol 'CUA) 'move)))) All I have to do to make an existing command support shift-select is add its name to the list. (The move-fns list used to be a lot longer when I was using Emacs 21.) If adding shift-select support to existing functions is much harder than adding a function name to a list, and can not be done WITHOUT MODIFYING THE PACKAGE, I will consider that a huge loss of functionality. I can not grok why you want to remove this very elegant way of supporting shift-select. If you guys end up removing it, I'll justkeep using the old CUA mode, as it seems much more elegant to me, and more importantly, JUST WORKS. -- MJF