From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: need option so line-move-to-column ignores fields, plus patch Date: Fri, 29 Sep 2006 12:32:27 -0400 Message-ID: References: <2cd46e7f0608310848l743430e9ia7a1d45e22428083@mail.gmail.com> <2cd46e7f0608312339s16a2a101p8c30840bbdeb0d22@mail.gmail.com> <2cd46e7f0609032143v311b670dra2d2ef679dd936@mail.gmail.com> <2cd46e7f0609041256q73c0c0d3s7631a964ae9a8367@mail.gmail.com> <2cd46e7f0609060952m54601787x8c91412af7fbf69f@mail.gmail.com> <2cd46e7f0609070747o5028d2bewd5a9e79a5afd4a46@mail.gmail.com> <2cd46e7f0609231629hf2187cbl7e46507ee6070422@mail.gmail.com> <87zmcokjjs.fsf@stupidchicken.com> <8764fbhbag.fsf@stupidchicken.com> Reply-To: rms@gnu.org NNTP-Posting-Host: main.gmane.org Content-Type: text/plain; charset=ISO-8859-15 X-Trace: sea.gmane.org 1159547581 5521 80.91.229.2 (29 Sep 2006 16:33:01 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 29 Sep 2006 16:33:01 +0000 (UTC) Cc: ken.manheimer@gmail.com, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Sep 29 18:32:57 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1GTLI0-0001TJ-Jo for ged-emacs-devel@m.gmane.org; Fri, 29 Sep 2006 18:32:40 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GTLI0-0002Uk-56 for ged-emacs-devel@m.gmane.org; Fri, 29 Sep 2006 12:32:40 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1GTLHo-0002Ty-BT for emacs-devel@gnu.org; Fri, 29 Sep 2006 12:32:28 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1GTLHn-0002Tm-TS for emacs-devel@gnu.org; Fri, 29 Sep 2006 12:32:28 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GTLHn-0002Tj-Ma for emacs-devel@gnu.org; Fri, 29 Sep 2006 12:32:27 -0400 Original-Received: from [199.232.76.164] (helo=fencepost.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.52) id 1GTLN9-00016c-3M for emacs-devel@gnu.org; Fri, 29 Sep 2006 12:37:59 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.34) id 1GTLHn-0007En-01; Fri, 29 Sep 2006 12:32:27 -0400 Original-To: Chong Yidong In-reply-to: <8764fbhbag.fsf@stupidchicken.com> (message from Chong Yidong on Mon, 25 Sep 2006 17:43:51 -0400) 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:60310 Archived-At: > > | 1. With the cursor adjacent to the right of any bar, > > | if you move forwards a line (^N), the cursor slips to column 0. > > I don't see where else the cursor can possibly go in #1. > > It can go to after the bar. That's where it should go. This logic is wrong. Consider the case where there is a field' in the region denoted XXXXXX; everywhere else, the `field' property is null. Point is initially located at the position indicated by `|'. | XXXXXXXXX Clearly, pressing C-n should move point to the start of the field. I don't see why that would be right. Moving to the end of the field seems just as plausible to me. But it might depend on the intended semantics of the field. > I think we need a concept of temporary goal fields to go with the > temporary goal column. When you type the first line-move command > it should record some info about the field you're in when you start. > Then if a field with the same property appears on the line you move to, > it should be handled as if it were -- in some sense -- "the same". This is a feature, not a bug. Does C-n do the right thing in the modes that use fields? If not, then I think this is a bug fix. If so, maybe this is a new feature. But if this behavior (i.e., treating non-contiguous fields as identical for the purpose of line-motion) is really the behavior you want, and we agree that it will close this bug, I can implement this even more simply than that, by comparing `field' properties at the relevant places inside line-move-finish. Please give it a try.