emacs-pretest-bug
[Top][All Lists]
Advanced

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

Re: ruler-mode is broken


From: Luc Teirlinck
Subject: Re: ruler-mode is broken
Date: Fri, 10 Oct 2003 14:16:18 -0500 (CDT)

Richard Stallman wrote:

       I did not follow this thread.  However, does ruler mode, directly or
       indirectly, use any of the functions `window-at' or
       `coordinates-in-window-p'?  To me, these functions seem broken on
       GNU/Linux.

   If they have bugs, we need to fix them.  But I am not sure they are bugs.

All behavior below for X and emacs -nw is current CVS.  Described MS
Windows behavior is from late May to early June CVS.  I can not
re-check, because I do not use MS Windows.  X behavior is unchanged
from last May.

Do:

emacs-21.3.50 -q --eval "(blink-cursor-mode 0)" &

In another session do:

emacs-21.3.50 -q -nw

Then in both (not everything below is necessary for -nw):

M-x scroll-bar-mode
M-x fringe-mode
Answer `none' to minibuffer question.
M-x tool-bar-mode
M-x menu-bar-mode

Now scroll-bar, tool-bar, menu-bar and fringes should all be gone.
All that remains is a "naked" Emacs window displaying *scratch*, the
mode line of *scratch* and the echo area / minibuffer.

Emacs now "looks" exactly the same in X and -nw and, I would guess, on
MS Windows.  Why the difference in behavior?  Clearly, the author of
the "windmove" code did not understand the subtleties involved,
assuming the behavior in X is legitimate.  Neither do I.  Reading
"(elisp)Coordinates and Windows" or the documentation strings of the
two commands was of no help to me.

(coordinates-in-window-p '(0 . 0) (selected-window))

Result:

GNU/Linux with X: nil
MS Windows and GNU/Linux -nw : (0 . 0)

(window-at 0 15)

Result:

GNU/Linux with X: nil
MS Windows:  #<window 3 on *scratch*>
GNU/Linux -nw:  #<window 1 on *scratch*>

(window-at 1 (window-height))

Result:

GNU/Linux with X: #<window 3 on *scratch*> 
MS Windows: #<window 4 on  *Minibuf-0*>
GNU/Linux -nw: #<window 2 on  *Minibuf-0*>

(window-at 0 (window-height))

Result:

GNU/Linux with X: nil
MS Windows:  #<window 4 on  *Minibuf-0*>
GNU/Linux -nw: #<window 2 on  *Minibuf-0*>

(window-at 1 (1+ (window-height)))

Result:

GNU/Linux with X: #<window 4 on  *Minibuf-0*>
MS Windows: unavailable
GNU/Linux -nw: nil

Sincerely,

Luc.








reply via email to

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