GNU bug report logs - #6103
Scrolling down jumpy when global-hl-line-mode is on

Previous Next

Package: emacs;

Reported by: David Reitter <david.reitter <at> gmail.com>

Date: Wed, 5 May 2010 02:28:01 UTC

Severity: normal

Merged with 6272

Found in version 24.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 6103 in the body.
You can then email your comments to 6103 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#6103; Package emacs. (Wed, 05 May 2010 02:28:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to David Reitter <david.reitter <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Wed, 05 May 2010 02:28:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: David Reitter <david.reitter <at> gmail.com>
To: Bug-Gnu-Emacs <bug-gnu-emacs <at> gnu.org>
Cc: 911mxl <at> gmail.com
Subject: Scrolling down jumpy when global-hl-line-mode is on
Date: Tue, 4 May 2010 22:05:03 -0400
This bug, reported by the user below, occurs in the current Emacs 23 branch as well.
To reproduce:

Emacs -Q
M-x about-emacs    (to show the fancy about screen)
resize the frame so that there is about half a text line visible after the last full line at the bottom of the window.
M-x global-hl-line-mode
Press <down> repeatedly.

The text will scroll up, and at some point you should see it scroll up without point moving down one buffer line.

Of course, one sees this sort of thing much more often when using `face-remapping-alist' to set the buffer's default face to a font that does not share the same height with the frame's default face.  But as can be seen, that is not strictly necessary.

Interestingly, this does not occur for me with hl-line-mode only...

This is on NS, but might occur on other systems as well...

Begin forwarded message:

> From: Meng Xiangliang <911mxl <at> gmail.com>
> Date: May 4, 2010 7:30:21 AM EDT
> To: aquamacs-bugs <at> aquamacs.org
> Subject: [Aquamacs-bugs] Scrolling not smooth when hl-line-mode is on
> Reply-To: Bug reports for Aquamacs Emacs <aquamacs-bugs <at> aquamacs.org>
> 
> Hi,
> 
> I'd like to report a bug in Aquamacs 2.0: Scrolling down with C+N or Down-arrow key is glitchy when global-hl-line-mode is on.
> 
> Specifically, when the cursor is at the bottom of the buffer window, pressing Ctrl+N should make the content move up one line and move the cursor to the next line; but sometimes (about 1/3) only the content moved up and the cursor stayed where it was. Scrolling up with Ctrl+P or Up-arrow is ok.
> 
> Another strange behavior maybe related is that, when holding down Ctrl+N to scrolling continuously, the cursor sometimes jumps to the middle of the buffer window while it should stays at the bottom.
> 
> I'm using the latest nightly build (2010-5-4), and erase all customizations.
> 
> Here is some dump data:
> 
> In GNU Emacs 23.1.96.1 (i386-apple-darwin9.8.0, NS apple-appkit-949.54)
> of 2010-05-04 on braeburn.aquamacs.org - Aquamacs Distribution 2.0preview6
> Windowing system distributor `Apple', version 10.3.1038
> configured using `configure  '--with-ns' '--without-x' 'CFLAGS=-arch i386 -arch ppc' 'LDFLAGS=-arch i386 -arch ppc''
> 
> Important settings:
>  value of $LC_ALL: nil
>  value of $LC_COLLATE: nil
>  value of $LC_CTYPE: nil
>  value of $LC_MESSAGES: nil
>  value of $LC_MONETARY: nil
>  value of $LC_NUMERIC: nil
>  value of $LC_TIME: nil
>  value of $LANG: nil
>  value of $XMODIFIERS: nil
>  locale-coding-system: nil
>  default enable-multibyte-characters: t
> 
> Major mode: Text
> 
> Minor modes in effect:
>  global-hl-line-mode: t
>  savehist-mode: t
>  smart-frame-positioning-mode: t
>  aquamacs-autoface-mode: t
>  recentf-mode: t
>  osx-key-mode: t
>  tabbar-mwheel-mode: t
>  tabbar-mode: t
>  show-paren-mode: t
>  delete-selection-mode: t
>  pc-selection-mode: t
>  cua-mode: t
>  tooltip-mode: t
>  mouse-wheel-mode: t
>  tool-bar-mode: t
>  menu-bar-mode: t
>  file-name-shadow-mode: t
>  global-font-lock-mode: t
>  font-lock-mode: t
>  blink-cursor-mode: t
>  auto-encryption-mode: t
>  auto-compression-mode: t
>  smart-spacing-mode: t
>  column-number-mode: t
>  line-number-mode: t
>  transient-mark-mode: t
>  auto-fill-mode: do-auto-fill
> 
> Recent input:
> ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N 
> ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N 
> ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N 
> ^N ^N ^N ^N ^N ^N ^N ^N ^P ^P ^P ^P ^P ^P ^P ^P ^P 
> ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P 
> ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P 
> ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^N ^N 
> ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N 
> ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N 
> ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N 
> ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N 
> ^N ^N ^N ^N ^N ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P 
> ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P 
> ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P ^P 
> ^P ^P ^P ^P ^P ^P ^P ^P ^P ^N ^N ^N ^N ^N ^N ^N ^N 
> ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N 
> ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N ^N 
> ^N ^N ^N ^N ^N ^N ^N <menu-bar> <help-menu> <bug-diagnosis> 
> <send-emacs-bug-report>
> 
> Recent messages:
> Loading /Users/liang/Library/Preferences/Aquamacs Emacs/Preferences.el (source)...done
> Mark set
> one-buffer-one-frame-mode disabled.
> Mark set [26 times]
> Loading /Users/liang/Library/Preferences/Aquamacs Emacs/frame-positions.el (source)...done
> Mark set [5 times]
> Aquamacs is based on GNU Emacs, a part of the GNU/Linux system. It is Free Software: you can improve and redistribute it under the GNU General Public License, version 3 or later. Copyright (C) 2010 Free Software Foundation, Inc. (C) 2010 D. Reitter. No Warranty.
> Mark set [3 times]
> Global-Hl-Line mode enabled
> line-move-1: End of buffer [2 times]
> line-move-1: Beginning of buffer [6 times]
> 
> Load-path shadows:
> /Users/liang/Library/Preferences/Aquamacs Emacs/vendor/themes/color-theme-library hides /Applications/Aquamacs.app/Contents/Resources/lisp/aquamacs/color-theme-library
> 
> Features:
> (shadow sort mail-extr message ecomplete rfc822 mml mml-sec
> password-cache mm-decode mm-bodies mm-encode mailcap mail-parse rfc2231
> rfc2047 rfc2045 qp ietf-drums mailabbrev nnheader gnus-util netrc
> mm-util mail-prsvr gmm-utils mailheader canlock sha1 hex-util hashcash
> mail-utils emacsbug hl-line load-emacs-plugins aquamacs-mode-defaults
> auctex-config server tex-site smart-dnd aquamacs-aux savehist mouse-sel
> one-buffer-one-frame smart-frame-positioning drews_init
> color-theme-autoloads saveplace visual-line aquamacs-bug
> aquamacs-autoface-mode aquamacs-editing sendmail recentf tree-widget
> cus-edit osxkeys emulate-mac-keyboard-mode frame-cmds strings misc-fns
> thingatpt+ thingatpt frame-fns avoid aquamacs-mac-fontsets fit-frame
> aquamacs-frame-setup aquamacs-tabbar tabbar-window cl cl-19 tabbar
> easy-mmode cus-start cus-load load-emacs-pre-plugins aquamacs-site-start
> cocoa-compatibility filladapt aquamacs-redo check-for-updates
> aquamacs-menu osx_defaults aquamacs-tool-bar aquamacs
> mac-extra-functions aquamacs-tools aquamacs-macros parse-time timezone
> time-date paren delsel pc-select cua-base wid-edit regexp-opt advice
> advice-preload byte-opt bytecomp byte-compile debug help-fns help-mode
> view image-file disp-table tooltip ediff-hook vc-hooks lisp-float-type
> mwheel ns-win easymenu tool-bar dnd fontset image fringe lisp-mode
> register page menu-bar rfn-eshadow timer select scroll-bar mldrag mouse
> jit-lock font-lock syntax facemenu font-core frame cham georgian
> utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
> japanese hebrew greek romanian slovak czech european ethiopic indian
> cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev
> loaddefs button minibuffer faces cus-face files text-properties overlay
> md5 base64 format env code-pages mule custom widget
> hashtable-print-readable backquote make-network-process ns multi-tty
> emacs)
> 
> Command line: (/Applications/Aquamacs.app/Contents/MacOS/Aquamacs)
> 
> PATH: /Users/liang/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin:/usr/X11/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/texbin:/usr/local/texlive/2009/bin
> 
> exec-path: (/Users/liang/bin /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/texbin /usr/X11/bin /usr/bin /bin /usr/sbin /sbin /Applications/Aquamacs.app/Contents/MacOS/bin /usr/local/texlive/2009/bin) 
> 
> --EOF--





Merged 6103 6272. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Mon, 08 Jul 2013 23:49:02 GMT) Full text and rfc822 format available.

Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Tue, 09 Jul 2013 17:02:04 GMT) Full text and rfc822 format available.

Notification sent to David Reitter <david.reitter <at> gmail.com>:
bug acknowledged by developer. (Tue, 09 Jul 2013 17:02:06 GMT) Full text and rfc822 format available.

Message #12 received at 6103-done <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Dima Kogan <dima <at> secretsauce.net>
Cc: 14567 <at> debbugs.gnu.org, 14598-done <at> debbugs.gnu.org,
 6103-done <at> debbugs.gnu.org
Subject: Re: bug#14567: These changes sometimes break plain text navigation
Date: Tue, 09 Jul 2013 20:00:31 +0300
> From: Dima Kogan <dima <at> secretsauce.net>
> Date: Mon, 08 Jul 2013 16:42:49 -0700
> 
> I did a search for similar-sounding existing bugs, and apparently this
> issue has already been filed, so I didn't add to the pile:
> 
>  http://debbugs.gnu.org/6103
>  http://debbugs.gnu.org/6272
>  http://debbugs.gnu.org/14598

None of these are reproducible with the current trunk, so I guess my
latest changes fixed them all indirectly.  I'm closing them.

> My main test case now works perfectly. I can still make problems
> happen if I adjust the text size with C-x C-+.

I can't.  So please file a new bug report ;-)

> Loading emacs with the .emacs I mentioned in the original post about
> this and then pressing 'C-x C-+' 4 times, pressing C-n never results in
> a 50% screen scroll. At the bottom, C-n presses alternate between
> 
>  - scrolling down one line while keeping the point stationary

Stationary on screen, or stationary at the same buffer position?

>  - moving the point down one line normally.

What do the following report in each one of the 2 above-mentioned
situations, i.e. before C-n would scroll, and before it would move?

  M-: (pos-visible-in-window-p t nil t) RET
  M-: (posn-at-point) RET
  M-: (default-font-height) RET

> This sounds like http://debbugs.gnu.org/14598

No, it isn't, as that bug is already solved.  I guess it was easier
than I thought at the time.





Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Tue, 09 Jul 2013 17:02:06 GMT) Full text and rfc822 format available.

Notification sent to David Reitter <david.reitter <at> gmail.com>:
bug acknowledged by developer. (Tue, 09 Jul 2013 17:02:07 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 07 Aug 2013 11:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 11 years and 103 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.