unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: martin rudalics <rudalics@gmx.at>
Cc: emacs-pretest-bug@gnu.org,
	Stephen Berman <Stephen.Berman@gmx.net>,
	emacs-devel@gnu.org
Subject: Re: invisible
Date: Mon, 26 Nov 2007 15:16:35 -0500	[thread overview]
Message-ID: <jwvk5o4ajsz.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <474B19DB.6030803@gmx.at> (martin rudalics's message of "Mon, 26 Nov 2007 20:09:15 +0100")

> I lost you here.  `line-move-ignore-invisible' nil means do not skip
> invisible newlines and explicitly should affect only C-n and C-p.
> `disable-point-adjustment' is about a lot of other things as well.

AFAIK in all circumstances where you want line-move-ignore-invisible to
be non-nil, you'll also want disable-point-adjustment to be nil.
And vice-versa.

>>> This function works only in certain cases,
>>> because what we really need is for `move-to-column'
>>> and `current-column' to be able to ignore invisible text."
>> This text seems odd: AFAIK they *do* ignore invisible text.  Does it
>> want to say that they sould ignore the `invisible' text property?
> Personally I think they should ignore all properties.

You're saying that line-move-to-column would like current-column and
friends should to treat invisible text as if it were visible?

For reference: the pre-21 behavior was to treat all invisible text as if
it weren't there.  In Emacs-21, I changed it so that text that's
replaced by an ellipsis is counted as if it were visible: I needed this
to be able to re-indent blocks of code while hidden by outline-minor-mode.
I didn't change it for non-ellipsis invisible text to reduce the
backward compatibility problems.

It turns out that it's also a good behavior in the sense that you can
get the other two behaviors (ignore all invisible text properties and
obey all invisible text properties) in the following way:

   (let ((buffer-invisibility-spec nil)) (current-column))
and
   (let ((buffer-invisibility-spec t)) (current-column))

>> The docstring of line-move-to-column is too vague: it doesn't say what
>> it intends to do, really: "considering invisibility" is not much help.
>> If someone knows what it intends to do, really, maybe we can figure out
>> how to fix it (probably the best fix will be to change the C code).

> `line-move-ignore-invisible' per se is vague.
> What is an invisible line?

Indeed.  We also need to improve that docstring.


        Stefan

  reply	other threads:[~2007-11-26 20:16 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20040225.150142.12214540.kazu@iijlab.net>
     [not found] ` <q5gvfluxljk.fsf@lucent.com>
     [not found]   ` <200402282128.i1SLSuY15359@raven.dms.auburn.edu>
     [not found]     ` <200402290224.i1T2Oip15705@raven.dms.auburn.edu>
2007-11-09 21:59       ` invisible Stephen Berman
2007-11-18  0:35         ` invisible Stephen Berman
2007-11-18 15:27           ` invisible martin rudalics
2007-11-23 12:24             ` invisible Stephen Berman
2007-11-23 14:25               ` invisible martin rudalics
2007-11-23 18:19                 ` invisible Stephen Berman
2007-11-23 19:59                   ` invisible martin rudalics
2007-11-23 20:31                     ` invisible Stephen Berman
2007-11-23 21:52                       ` invisible martin rudalics
2007-11-23 23:04                         ` invisible Stephen Berman
2007-11-24  9:33                           ` invisible martin rudalics
2007-11-24 10:11                             ` invisible Johan Bockgård
2007-11-24 10:30                               ` invisible martin rudalics
2007-11-24 10:34                                 ` invisible martin rudalics
2007-11-24 19:50                             ` invisible Stephen Berman
2007-11-24 22:26                               ` invisible martin rudalics
2007-11-26  3:25                                 ` invisible Stefan Monnier
2007-11-26  8:02                                   ` invisible martin rudalics
2007-11-26 15:17                                     ` invisible Stefan Monnier
2007-11-26 19:10                                       ` invisible martin rudalics
2007-11-26 20:19                                         ` invisible Stefan Monnier
2007-11-26  3:20                             ` invisible Stefan Monnier
2007-11-26  7:59                               ` invisible martin rudalics
2007-11-26 15:29                                 ` invisible Stefan Monnier
2007-11-26 19:09                                   ` invisible martin rudalics
2007-11-26 20:16                                     ` Stefan Monnier [this message]
2007-11-27 13:11                                       ` invisible martin rudalics
2007-11-27 18:46                                       ` invisible martin rudalics
2007-11-27 22:44                                         ` invisible Stefan Monnier
2007-11-28  9:16                                           ` invisible martin rudalics
2007-11-28 19:20                                             ` invisible Stefan Monnier
2007-11-28 22:41                                               ` invisible martin rudalics
2007-11-28 23:23                                         ` invisible Stephen Berman
2007-11-29 10:15                                           ` invisible martin rudalics
2007-11-29 16:13                                             ` invisible Stefan Monnier
2007-11-29  1:04                                         ` invisible Richard Stallman
2007-11-29 10:26                                           ` invisible martin rudalics
2007-11-29 15:57                                             ` invisible Stefan Monnier
2007-11-29 16:36                                               ` invisible martin rudalics
2007-11-29 18:53                                                 ` invisible Stefan Monnier
2007-11-29 19:55                                                   ` invisible martin rudalics
2007-11-30 17:19                                               ` invisible martin rudalics
2007-11-30 18:59                                                 ` invisible Stefan Monnier
2007-11-30 22:09                                                   ` invisible martin rudalics
2007-12-01  3:11                                                     ` invisible Stefan Monnier
2007-12-01  9:44                                                       ` invisible martin rudalics
2007-12-01 20:41                                                         ` invisible Stefan Monnier
2007-12-02  1:15                                                           ` invisible Johan Bockgård
2007-12-02  9:47                                                           ` invisible martin rudalics
2007-11-23 14:37               ` invisible martin rudalics

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwvk5o4ajsz.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=Stephen.Berman@gmx.net \
    --cc=emacs-devel@gnu.org \
    --cc=emacs-pretest-bug@gnu.org \
    --cc=rudalics@gmx.at \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).