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: position on changing defaults? Date: Wed, 12 Mar 2008 10:56:23 +0100 Message-ID: <87r6egp8oo.fsf@kfs-lx.rd.rdm> References: <200803050637.m256bXL3008361@sallyv1.ics.uci.edu> <87hcfkdhqk.fsf@stupidchicken.com> <87pru8enjx.fsf@kfs-lx.rd.rdm> <8763vy95a6.fsf@kfs-lx.rd.rdm> <87wsoc39i8.fsf@catnip.gol.com> <877igb7dsi.fsf@kfs-lx.rd.rdm> <87hcff5upc.fsf@kfs-lx.rd.rdm> <87fxuxsg3m.fsf@kfs-lx.rd.rdm> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1205316119 13540 80.91.229.12 (12 Mar 2008 10:01:59 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 12 Mar 2008 10:01:59 +0000 (UTC) Cc: cyd@stupidchicken.com, emacs-devel@gnu.org, rms@gnu.org, miles@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Mar 12 11:02:25 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 1JZNmf-00046Y-11 for ged-emacs-devel@m.gmane.org; Wed, 12 Mar 2008 11:02:05 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JZNm5-0002jJ-DQ for ged-emacs-devel@m.gmane.org; Wed, 12 Mar 2008 06:01:29 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JZNhP-0001FE-44 for emacs-devel@gnu.org; Wed, 12 Mar 2008 05:56:39 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JZNhM-0001EI-Nq for emacs-devel@gnu.org; Wed, 12 Mar 2008 05:56:38 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JZNhL-0001Du-9T for emacs-devel@gnu.org; Wed, 12 Mar 2008 05:56:36 -0400 Original-Received: from mail-relay.sonofon.dk ([212.88.64.25]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1JZNhK-00047Q-Kh for emacs-devel@gnu.org; Wed, 12 Mar 2008 05:56:34 -0400 Original-Received: (qmail 27155 invoked from network); 12 Mar 2008 09:56:30 -0000 Original-Received: from unknown (HELO kfs-lx.rd.rdm.cua.dk) (213.83.150.21) by 0 with SMTP; 12 Mar 2008 09:56:30 -0000 In-Reply-To: (Stefan Monnier's message of "Tue\, 11 Mar 2008 14\:31\:19 -0400") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1.92 (gnu/linux) X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.6-4.9 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:92257 Archived-At: Stefan Monnier writes: >> However, your proposal to bind S- to a command which runs >> the command of the underlying unshifted key would actually do better >> than that, as it doesn't need to know in advance what that command is. > > Instead, it presumes that that key is only ever used for > cursor movement. If the key is rebound to something that behaves > differently. E.g. if the user rebinds C-f to find-file, S-C-f might > activate the region and then call find-file. That's very true - but if a major mode binds some other command to e.g. C-f, it would be very odd if that command is not a movement command - anything else would break "user expectations". OTOH, there are specialized modes, such as ido-mode where C-f (in the minibuffer) has a rather tricky behaviour depending on position and context - and in general does NOT do movement. But I've not had any reason to use shift- movement in the minibuffer when ido is active (that has very little meaning). I've made a working implementation of RMS' approach together with variations of Miles proposal and there is one major problem with it - you cannot in general give a prefix arg to a shifted movement command. E.g. C-5 S-right works, marking next 5 chars. But S-right C-5 S-right, also just marks 5 chars, as the C-5 prefix deactivates the mark set by the first S-right. BTW, we discussed making transient-mark-mode the default - so can we assume that transient-mark-mode is _on_ for the shifted movement keys to work? Or do we have to find a solution which works also for transient-mark-mode off (e.g. setting it on temporarily as Miles approach did). -- Kim F. Storm http://www.cua.dk