From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.devel Subject: Re: invisible Date: Sat, 01 Dec 2007 10:44:13 +0100 Message-ID: <47512CED.1070300@gmx.at> References: <20040225.150142.12214540.kazu@iijlab.net> <87r6ihi1z7.fsf@escher.local.home> <4746E2CF.4010604@gmx.at> <87k5o8q0y5.fsf@escher.local.home> <4747312D.7020605@gmx.at> <87fxywpuuy.fsf@escher.local.home> <47474B8C.9020806@gmx.at> <87bq9kpnqd.fsf@escher.local.home> <4747EFE8.5090405@gmx.at> <474A7CF6.8030802@gmx.at> <474B19DB.6030803@gmx.at> <474C65FF.3070403@gmx.at> <474E93EC.9040909@gmx.at> <4750463D.4000504@gmx.at> <47508A34.2000109@gmx.at> 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 1196502331 9174 80.91.229.12 (1 Dec 2007 09:45:31 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 1 Dec 2007 09:45:31 +0000 (UTC) Cc: Stephen.Berman@gmx.net, rms@gnu.org, emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Dec 01 10:45:39 2007 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 1IyOuo-0001a5-9g for ged-emacs-devel@m.gmane.org; Sat, 01 Dec 2007 10:45:38 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IyOuY-000474-Dd for ged-emacs-devel@m.gmane.org; Sat, 01 Dec 2007 04:45:22 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IyOuK-0003zO-Vc for emacs-devel@gnu.org; Sat, 01 Dec 2007 04:45:09 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IyOuK-0003yM-7F for emacs-devel@gnu.org; Sat, 01 Dec 2007 04:45:08 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IyOuK-0003yE-1K for emacs-devel@gnu.org; Sat, 01 Dec 2007 04:45:08 -0500 Original-Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IyOuJ-0001fJ-EE for emacs-devel@gnu.org; Sat, 01 Dec 2007 04:45:07 -0500 Original-Received: (qmail invoked by alias); 01 Dec 2007 09:45:06 -0000 Original-Received: from N954P013.adsl.highway.telekom.at (EHLO [62.47.63.45]) [62.47.63.45] by mail.gmx.net (mp008) with SMTP; 01 Dec 2007 10:45:06 +0100 X-Authenticated: #14592706 X-Provags-ID: V01U2FsdGVkX18oSsM56Qgouu0GP+BbkQCR9tU2/qOrAwixDLxYvH 8vPZ+M4Gl2z3Gv User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) X-Accept-Language: de-DE, de, en-us, en In-Reply-To: X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) 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:84414 Archived-At: >>I don't know. `line-move-ignore-invisible' is a user option (although I >>fail to see how it's useful). `(global-)disable-point-adjustment' is not. > > > global-disable-point-adjustment *is* a user option. OK. But according to the Elisp manual it's a "plain" variable and it's not customizable. Also `line-move-ignore-invisible' is an option that applies to C-n/C-p exclusively. `global-disable-point-adjustment', on the other hand, applies to all commands. >>IIUC a user might want to set `line-move-ignore-invisible' to nil >>in order to have C-n/C-p stop at or near invisible newlines. In order >>to make this possible I set `disable-point-adjustment' to t. I do this >>because for this particular goal the adjustment step is too clever. But >>I don't see how replacing the one by the negation of the other would >>solve the problem. > > > I must be missing something: the relationship is pretty obvious to me > since your code sets disable-point-adjustment to t (i.e. forces Emacs to > behave as if global-disable-point-adjustment were t for this one > command) if and only if line-move-ignore-invisible is nil. Because I'm not allowed to disable point-adjustment for the normal `line-move-ignore-invisible' t case. What shall I do if someone wants to disable point-adjustment for the `line-move-ignore-invisible' t case too? We have line-move-ignore-invisible => disable-point-adjustment but not disable-point-adjustment => line-move-ignore-invisible or what am I missing? >>Because I wanted to emphasize that this is for interactive use only >>and `interactive-p' is tested in next-/previous-line. If for whatever >>reason people want to use next-/previous-line in a function, they >>should be allowed to disable point-adjustment as they like. But I do >>not have a strong opinion about this, let's see whether my patch DTRT >>at all. As Richard mentioned earlier adjusting one thing here breaks >>another ... > > > Since those functions are discouraged in Elisp code anyway I don't think > it matters much. Neither do I. But why do these have an `interactive-p' check in the first place? BTW, there are a few instances where packages do rely on next-/previous-line (I've just checked in a corresponding fix for blackbox.el).