unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Dima Kogan <dima@secretsauce.net>
To: 14567@debbugs.gnu.org
Subject: bug#14567: These changes sometimes break plain text navigation
Date: Sat, 06 Jul 2013 09:14:44 -0700	[thread overview]
Message-ID: <87ppuvacnf.fsf@secretsauce.net> (raw)
In-Reply-To: <83ppuwx86k.fsf@gnu.org>

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Dima Kogan <dima@secretsauce.net>
>> Date: Sat, 06 Jul 2013 02:02:16 -0700
>> 
>> 2. Press C-f repeatedly until the point reaches the bottom of the
>>    screen; this works fine
>> 
>> 3. When at the bottom of the screen C-f scrolls the text one line up,
>>    while keeping the point where it was in the buffer. Now the point
>>    gets stuck, and subsequent C-f/C-b just scroll the screen; the point
>>    is stuck.
>
> You mean, "C-x =" reports the same value no matter how many times you
> press C-f or C-b?

First off, there was a very important brain fart in what I just said. I
meant C-n/C-p instead of C-f/C-b everywhere in this bug report. Oops.
This was probably the worst way to mess up this bug report. Hopefully it
makes a bit more sense now. Sorry.

C-x = does report the same value with C-n/C-p pressed as long as there
is room to scroll; if we're already looking at the start of the
document, then C-p does the normal unbugged thing, since it can't scroll
back any further.


> Moreover, the changes in this bug report are not supposed to affect
> C-f/C-b in any way.  If you revert the changes in simple.el introduced
> in revision 112998, does this problem go away?

Like I said above, I badly flubbed the report; it's actually about
C-n/C-p. And yes; reverting that revision makes things work again.


> Does any file reproduces the problem, or only some?  E.g., does
> xdisp.c from the Emacs sources reproduce it?

Any file does it. I use the output of `seq 1000`, which is not very
special.


> Is the last line only partially visible, per chance?

No. The edge of the buffer looks like it aligns with the bottom edge of
the last line of text, at least to my eye. If I mess with the displayed
text more by pressing C-x C-+ several times then the last line IS only
partially visible. Then I get the same point-getting-stuck behavior, but
it recovers after a handful of scroll-only C-n presses. The exact number
depends on window size, font size, how many times C-x C-+ was pressed,
etc.


> If you set auto-window-vscroll to nil, does the problem still happen?

No. That fixes it.


>> This is 100% reproducible for me. I suspect it may not be so for others.
>> Let me know if I should run any specific tests to get to the bottom of
>> this.
>
> Well, not being dependent on a particular font would be a start.  An
> easier reproducing recipe would be even better.

I suspect this is font-dependent because it has something to do with the
pixel height of the font text. Can you reproduce by keeping whaever font
you're using and pressing C-x C-+ a few times? As I described earlier
this usually sticks the point for only a few C-n presses, but it's
probably the same issue.


I just did some minor debugging by adding a trace to
(window-line-height) with (trace-function-background). If I turn off
global-hl-line-mode, then the bug goes away, and (window-line-height)
appears to return reasonable values. With global-hl-line-mode,
(window-line-height) and (window-line-height -1) both return nil
supposedly. Not sure how line-move-partial could keep working without
error in that case, but that's what it says.


> Thanks.

Thank YOU!





  reply	other threads:[~2013-07-06 16:14 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-06 12:17 bug#14567: Scrolling of large images Thomas Wiecki
2013-06-06 16:42 ` Eli Zaretskii
2013-06-06 17:16   ` Thomas Wiecki
2013-06-06 17:32     ` Eli Zaretskii
2013-06-08 14:19       ` Eli Zaretskii
2013-06-08 15:52         ` Thomas Wiecki
2013-06-08 16:49           ` Eli Zaretskii
2013-06-08 17:51             ` Thomas Wiecki
2013-06-08 18:44               ` Eli Zaretskii
2013-06-08 21:39                 ` Thomas Wiecki
2013-06-09  2:42                   ` Eli Zaretskii
2013-06-09  9:27                     ` Vitalie Spinu
2013-06-11 20:14                     ` David Engster
2013-06-15  8:23                       ` Eli Zaretskii
2013-06-15  9:02                         ` David Engster
2013-06-15  9:39                           ` Eli Zaretskii
2013-06-15 10:08                             ` David Engster
2013-06-15 11:13                               ` Thierry Volpiatto
2013-06-15 11:26                                 ` Eli Zaretskii
2013-06-15 12:41                                   ` Eli Zaretskii
2013-06-16  5:33                                     ` Thierry Volpiatto
2013-06-16  6:18                                       ` Thierry Volpiatto
2013-06-16 16:24                                         ` Eli Zaretskii
2013-06-17  4:57                                           ` Thierry Volpiatto
2013-06-17 15:14                                             ` Eli Zaretskii
2013-06-18 11:35                                               ` Thierry Volpiatto
2013-06-18 16:13                                                 ` Eli Zaretskii
2013-06-19  6:43                                                   ` Thierry Volpiatto
2013-07-06  9:02 ` bug#14567: These changes sometimes break plain text navigation Dima Kogan
2013-07-06 11:02   ` Eli Zaretskii
2013-07-06 16:14     ` Dima Kogan [this message]
2013-07-06 17:41       ` Eli Zaretskii
2013-07-06 21:51         ` Dima Kogan
2013-07-07  2:48           ` Eli Zaretskii
2013-07-07  4:46             ` Dima Kogan
2013-07-07 15:51               ` Eli Zaretskii
2013-07-07 18:57                 ` Dima Kogan
2013-07-08 17:35                   ` Eli Zaretskii
2013-07-08 23:42                     ` Dima Kogan
2013-07-09 17:00                       ` bug#14598: " Eli Zaretskii
2013-07-10  9:30                         ` Stephen Berman
2013-07-10 16:27                           ` Eli Zaretskii
2013-07-10 21:33                             ` Stephen Berman

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=87ppuvacnf.fsf@secretsauce.net \
    --to=dima@secretsauce.net \
    --cc=14567@debbugs.gnu.org \
    /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).