emacs-devel
[Top][All Lists]
Advanced

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

Re: init_iterator takes window


From: Richard Stallman
Subject: Re: init_iterator takes window
Date: Sat, 24 Aug 2002 23:26:54 -0600 (MDT)

       appearance can also change between two windows even
       in the same frame.

    so there is a semantic gap between current `current-column' and one that
    would take into account variable-width fonts, implying `current-column'
    callers need to bifurcate their usage to call some "window-current-column"
    if they care about variable-width fonts, and `current-column' otherwise.

current-column is not affected at present by the selected window, and
that may be a good thing--but it is not a crucial design requirement.
It was easy to do this, because current-column at present does not
crucially need any data from the selected window.

With the changes for variable width, it would make sense to
get all this info from the selected window.

    Even in Emacs-20 the `current-column' depends on the window
    because of window-specific overlays that might make some part
    of the buffer invisible in one window but not in another.

Actually it seems to ignore those overlays, because it calls
skip_invisible with Qnil for the WINDOW arg.

    to rms: could you define precisely what is meant by "upward compatibility"
    wrt `current-column' *usage*?  to fulfill that goal i need to understand
    the concept fully, including from caller perspective.

Upward compatibility means, here, that existing user programs that
call current-column and other primitives should DTRT (as much as
possible) in cases with variable width fonts, when they use the new
version of current-column that handles variable width.  Clearly we
can't make all of these programs DTRT just by changing current-column
and other primitives.  The point is that the proper way to change the
primitives is the way that achieves the largest portion of that goal.

It may be that it would be desirable to have a form of current-column
that assumes fixed-width, as well as the new one that calculates based
on variable width fonts.  After your new version is working, we will
see if that is needed.





reply via email to

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