emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: "... the window start at a meaningless point within a line."


From: Eli Zaretskii
Subject: Re: "... the window start at a meaningless point within a line."
Date: Sun, 18 Oct 2015 20:44:46 +0300

> Date: Sun, 18 Oct 2015 15:00:52 +0000
> Cc: address@hidden
> From: Alan Mackenzie <address@hidden>
> 
> > Another idea: did you try augmenting the X coordinate of the iterator
> > after it gets back to point at the beginning of Fvertical_motion?
> > IOW, after this line:
> 
> >     move_it_to (&it,
> >                 (!disp_string_at_start_p
> >                  || FETCH_BYTE (IT_BYTEPOS (it)) == '\n')
> >                 ? PT
> >                 : PT - 1,
> >                 -1, -1, -1, MOVE_TO_POS);
> 
> > modify it.current_x such that it's relative to the "actual"
> > window-start.  Then let Fvertical_motion do its job as usual.  Did you
> > try that?
> 
> No, I haven't.  But I don't think it could work.  After anchoring `it'
> at "actual" WS, it would have to move up or down.  Any time the iterator
> is moved to a previous line, it re-anchors itself at a previous _xdisp_
> BOL then moves forward, losing the relationship with WS.
> 
> So this idea might work with nlines > 0, but couldn't work with nlines
> <= 0.

One bird at a time, okay?  Could you please see if this idea works
with nlines > 0?  If it does, it significantly simplifies the
solution, because we could do something very similar for moving
backward, i.e. apply the correction after each move to a previous
line.

Thanks.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]