GNU bug report logs - #15712
24.3; Point forgets what column it was in when vertical movement causes horizontal scroll

Previous Next

Package: emacs;

Reported by: Adam Nielsen <a.nielsen <at> shikadi.net>

Date: Fri, 25 Oct 2013 07:37:01 UTC

Severity: normal

Found in version 24.3

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 15712 in the body.
You can then email your comments to 15712 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 bug-gnu-emacs <at> gnu.org:
bug#15712; Package emacs. (Fri, 25 Oct 2013 07:37:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Adam Nielsen <a.nielsen <at> shikadi.net>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 25 Oct 2013 07:37:02 GMT) Full text and rfc822 format available.

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

From: Adam Nielsen <a.nielsen <at> shikadi.net>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.3; Point forgets what column it was in when vertical movement
 causes horizontal scroll
Date: Fri, 25 Oct 2013 16:42:03 +1000
Say you have a number of long lines, which are truncated because they
are wider than Emacs can display.  There are blank lines in between
them.  Like this: (the "..." should be expanded until the line is wider
than the Emacs window)

long 1 longlonglong...2
long 1 longlonglong...2

long 1 longlonglong...2
long 1 longlonglong...2

If you place the point on the "1" and move down one line, the point will
move to the "1" on the line below (i.e. it stays on the same column.)
Moving down another line (to the blank line) the point changes column,
but moving down a third time the point returns to the original column
and is again on the "1".  This is normal and correct.

However if this process is repeated on the "2" instead, when the point
is moved to the blank line Emacs will scroll horizontally to ensure the
point remains visible.  This scrolling however, causes the point to
forget what column it was on, so when moving down below the blank line,
it does not return to the "2" and instead moves to the "l", as if the
point had been commanded to return to the first column.

I believe this is a bug because the behaviour is not consistent, and
changes depending on the width of the Emacs window - it only affects
lines too long to display.


In GNU Emacs 24.3.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.8.2)
 of 2013-08-07 on -mnt-storage-buildroots-staging-x86_64-eric
Windowing system distributor `The X.Org Foundation', version
11.0.11402000 Configured using:
 `configure '--prefix=/usr' '--sysconfdir=/etc' '--libexecdir=/usr/lib'
 '--localstatedir=/var' '--with-x-toolkit=gtk3' '--with-xft'
 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector
 --param=ssp-buffer-size=4'
 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro'
 'CPPFLAGS=-D_FORTIFY_SOURCE=2''

Important settings:
  value of $LC_COLLATE: C
  value of $LC_TIME: en_DK.UTF-8
  value of $LANG: en_AU.UTF-8
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: C++/l

Minor modes in effect:
  shell-dirtrack-mode: t
  ido-everywhere: t
  winner-mode: t
  show-paren-mode: t
  autopair-mode: t
  autopair-global-mode: t
  global-whitespace-mode: t
  delete-selection-mode: t
  desktop-save-mode: t
  recentf-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  abbrev-mode: t

Load-path shadows:
/usr/share/emacs/site-lisp/php-mode
hides /home/adam/.emacs.d/site-lisp/nxhtml/related/php-mode /usr/share/emacs/24.3/lisp/emacs-lisp/ert
hides /home/adam/.emacs.d/site-lisp/nxhtml/tests/ert

Features:
(shadow sort mail-extr emacsbug message idna rfc822 mml mml-sec
mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils
mailheader sendmail rfc2047 rfc2045 ietf-drums mail-utils jka-compr info
windmove vcursor ruler-mode mule-util reveal repeat org-protocol master
linum iswitchb ibuffer hl-line hippie-exp follow filesets filecache ffap
url-parse url-vars emacs-lock dabbrev completion bs autorevert
autoinsert pp viper viper-ex viper-macs viper-mous viper-cmd viper-keym
viper-util viper-init vip tpu-edt edt picture ehelp cua-base crisp
electric cus-edit cus-start cus-load vc vc-dispatcher js json moz imenu
thingatpt make-mode tramp-cache tramp tramp-compat auth-source eieio
mm-util mail-prsvr password-cache tramp-loaddefs shell dired-aux
help-mode dired misearch multi-isearch css-mode org-wl org-w3m org-vm
org-rmail org-mhe org-mew org-irc org-jsinfo org-infojs org-html org-exp
ob-exp org-exp-blocks org-agenda org-info org-gnus gnus-util org-docview
org-bibtex bibtex org-bbdb org byte-opt warnings bytecomp byte-compile
cconv ob-tangle ob-ref ob-lob ob-table org-footnote org-src ob-comint
ob-keys org-pcomplete pcomplete comint ansi-color org-list org-faces
org-entities noutline outline easy-mmode org-version ob-emacs-lisp ob
org-compat org-macs ob-eval org-loaddefs format-spec find-func cal-menu
calendar cal-loaddefs nxml-uchnm rng-xsd xsd-regexp rng-cmpct rng-nxml
rng-valid rng-loc rng-uri rng-parse nxml-parse rng-match rng-dt rng-util
rng-pttrn nxml-ns nxml-mode nxml-outln nxml-rap nxml-util nxml-glyph
nxml-enc xmltok vc-git php-mode derived etags cc-langs cc-mode cc-fonts
cc-guess cc-menus cc-cmds speedbar sb-image ezimage dframe ido winner
ring edmacro kmacro cc-styles cc-align cc-engine cc-vars cc-defs
rainbow-delimiters paren autopair whitespace smarttabs advice help-fns
advice-preload delsel desktop recentf tree-widget cl-macs gv
color-theme-borland color-theme easymenu wid-edit cl cl-lib time-date
tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar
dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode
register page menu-bar rfn-eshadow timer select scroll-bar 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
minibuffer loaddefs button faces cus-face macroexp files text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dbusbind
dynamic-setting system-font-setting font-render-setting move-toolbar gtk
x-toolkit x multi-tty emacs)




Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Fri, 25 Oct 2013 09:48:02 GMT) Full text and rfc822 format available.

Notification sent to Adam Nielsen <a.nielsen <at> shikadi.net>:
bug acknowledged by developer. (Fri, 25 Oct 2013 09:48:03 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Adam Nielsen <a.nielsen <at> shikadi.net>
Cc: 15712-done <at> debbugs.gnu.org
Subject: Re: bug#15712: 24.3;
 Point forgets what column it was in when vertical movement
 causes	horizontal scroll
Date: Fri, 25 Oct 2013 12:47:40 +0300
> Date: Fri, 25 Oct 2013 16:42:03 +1000
> From: Adam Nielsen <a.nielsen <at> shikadi.net>
> 
> Say you have a number of long lines, which are truncated because they
> are wider than Emacs can display.  There are blank lines in between
> them.  Like this: (the "..." should be expanded until the line is wider
> than the Emacs window)
> 
> long 1 longlonglong...2
> long 1 longlonglong...2
> 
> long 1 longlonglong...2
> long 1 longlonglong...2
> 
> If you place the point on the "1" and move down one line, the point will
> move to the "1" on the line below (i.e. it stays on the same column.)
> Moving down another line (to the blank line) the point changes column,
> but moving down a third time the point returns to the original column
> and is again on the "1".  This is normal and correct.
> 
> However if this process is repeated on the "2" instead, when the point
> is moved to the blank line Emacs will scroll horizontally to ensure the
> point remains visible.  This scrolling however, causes the point to
> forget what column it was on, so when moving down below the blank line,
> it does not return to the "2" and instead moves to the "l", as if the
> point had been commanded to return to the first column.
> 
> I believe this is a bug because the behaviour is not consistent, and
> changes depending on the width of the Emacs window - it only affects
> lines too long to display.

Fixed in trunk revision 114799.

Thanks.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 22 Nov 2013 12:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 10 years and 178 days ago.

Previous Next


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