Hrvoje Niksic <hniksic(a)srce.hr> writes:
completely hosed? (`window-end' is extremely useful when you
want to
operate on the visible portion of the window, for whatever reason.)
Personally I think that is generally the wrong way to do this. A more
loose coupling between redisplay engine and the lisp code should be
preferred (i.e. a lazy-shot style asynchronous feedback mechanism.
Writing a better C implementation of that and generalising it into an
on-demand.el is still on my long term TODO list. It is however after
"write thesis").
For instance what do you if multiple windows have this buffer visible?
* (window-end) at the end of buffer returns (1+ (point-max)), which
breaks any code that tries to use it sensibly. I now use
(min (window-end) (point-max)).
This indeed seems wrong.
I don't know which of the two is more correct, but I really
think
they should not differ.
I think the non-GUARANTEE values is wrong. It doesn't seem to be more
expense to compute the correct value. However it might be that there
is code that depends on the behaviour there is now.
* `window-start' doesn't have a GUARANTEE argument. What use
is it to
be able to find window's end position without forcing a redraw
without being able to do the same for its start position?
Because I think the window-start value is always GUARANTEEd.
Jan