Subject: bug#10119: 23.3; C-e goes to the wrong place in whitespace-mode when the end of line is shown

From: Yichao Yu <[email-masked]>
Date: Wed, 23 Nov 2011 08:41:49 -0500

Enable the whitespace-mode which shows a ``$'' at the end of each line.
if a line is one letter shorter than the buffer's width (which means the
``$'' from the whitespace-mode is at the very right of the buffer) and
when the next line is not empty (or maybe when this is not the last
line), C-e in this line will go to the end of next line rather than the
end of this line. (Well, I can see the reason might be emacs take the
fake ``$'' as a real character or sth like this.)

P.S. a seperate but maybe relevant bug in whitespace mode, linum-mode
sometimes doesn't show the line number of some lines (not exactly sure when.)

Thank you.

In GNU Emacs 23.3.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.24.6)
 of 2011-09-13 on bitzer.hoetzel.info
Windowing system distributor `The X.Org Foundation', version 11.0.11102000
configured using `configure  '--prefix=/usr' '--sysconfdir=/etc' '--libexecdir=/usr/lib' '--localstatedir=/var' '--with-x-toolkit=gtk' '--with-xft' 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2' 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu''

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: zh_CN.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  global-whitespace-mode: t
  auto-image-file-mode: t
  show-paren-mode: t
  global-linum-mode: t
  linum-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-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
M-x r e p o r t <tab> <return>

Recent messages:
Loading /usr/share/emacs/site-lisp/xcscope.el (source)...done
Loading /usr/share/emacs/site-lisp/cedet/common/cedet.el (source)...
Setting up CEDET packages...done
Loading /usr/share/emacs/site-lisp/cedet/common/cedet.el (source)...done
For information about GNU Emacs and the GNU system, type C-h C-a.

Load-path shadows:
/usr/share/emacs/site-lisp/cedet/speedbar/dframe hides /usr/share/emacs/23.3/lisp/dframe
/usr/share/emacs/site-lisp/cedet/speedbar/sb-image hides /usr/share/emacs/23.3/lisp/sb-image
/usr/share/emacs/site-lisp/cedet/common/ezimage hides /usr/share/emacs/23.3/lisp/ezimage
/usr/share/emacs/site-lisp/cedet/speedbar/speedbar hides /usr/share/emacs/23.3/lisp/speedbar
/usr/share/emacs/site-lisp/cedet/eieio/eieio-custom hides /usr/share/emacs/23.3/lisp/emacs-lisp/eieio-custom
/usr/share/emacs/site-lisp/cedet/eieio/eieio-datadebug hides /usr/share/emacs/23.3/lisp/emacs-lisp/eieio-datadebug
/usr/share/emacs/site-lisp/cedet/eieio/eieio-opt hides /usr/share/emacs/23.3/lisp/emacs-lisp/eieio-opt
/usr/share/emacs/site-lisp/cedet/eieio/chart hides /usr/share/emacs/23.3/lisp/emacs-lisp/chart
/usr/share/emacs/site-lisp/cedet/eieio/eieio-speedbar hides /usr/share/emacs/23.3/lisp/emacs-lisp/eieio-speedbar
/usr/share/emacs/site-lisp/cedet/eieio/eieio-base hides /usr/share/emacs/23.3/lisp/emacs-lisp/eieio-base
/usr/share/emacs/site-lisp/cedet/eieio/eieio-comp hides /usr/share/emacs/23.3/lisp/emacs-lisp/eieio-comp
/usr/share/emacs/site-lisp/cedet/eieio/eieio hides /usr/share/emacs/23.3/lisp/emacs-lisp/eieio
/usr/share/emacs/site-lisp/cedet/common/cedet hides /usr/share/emacs/23.3/lisp/cedet/cedet
/usr/share/emacs/site-lisp/cedet/srecode/srecode hides /usr/share/emacs/23.3/lisp/cedet/srecode
/usr/share/emacs/site-lisp/cedet/common/mode-local hides /usr/share/emacs/23.3/lisp/cedet/mode-local
/usr/share/emacs/site-lisp/cedet/common/inversion hides /usr/share/emacs/23.3/lisp/cedet/inversion
/usr/share/emacs/site-lisp/cedet/common/data-debug hides /usr/share/emacs/23.3/lisp/cedet/data-debug
/usr/share/emacs/site-lisp/cedet/common/cedet-global hides /usr/share/emacs/23.3/lisp/cedet/cedet-global
/usr/share/emacs/site-lisp/cedet/semantic/semantic hides /usr/share/emacs/23.3/lisp/cedet/semantic
/usr/share/emacs/site-lisp/cedet/common/cedet-idutils hides /usr/share/emacs/23.3/lisp/cedet/cedet-idutils
/usr/share/emacs/site-lisp/cedet/common/pulse hides /usr/share/emacs/23.3/lisp/cedet/pulse
/usr/share/emacs/site-lisp/cedet/ede/ede hides /usr/share/emacs/23.3/lisp/cedet/ede
/usr/share/emacs/site-lisp/cedet/common/cedet-cscope hides /usr/share/emacs/23.3/lisp/cedet/cedet-cscope
/usr/share/emacs/site-lisp/cedet/common/cedet-files hides /usr/share/emacs/23.3/lisp/cedet/cedet-files

Features:
(shadow sort mail-extr message idna sendmail 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 time-date mm-util mail-prsvr gmm-utils mailheader canlock sha1
hex-util hashcash mail-utils emacsbug semantic-el semantic-bovine
bovine-debug semantic-debug disp-table whitespace cedet
cedet-contrib-load contrib-loaddefs cogre-load cogre-loaddefs
speedbar-load speedbar-loaddefs ede-load ede-loaddefs ede-speedbar
ede-files ede ede-base ede-auto eieio-speedbar semantic-ia-sb
semantic-analyze semantic-scope semantic-analyze-fcn semantic-sort
semanticdb-el semanticdb semantic-ctxt semantic-format
semantic-util-modes semantic-util semantic semantic-lex semantic-tag
working fame speedbar sb-image ezimage dframe assoc eieio-custom
wid-edit ede-source eieio-base srecode-load srecode srecode-loaddefs
semantic-load semantic-fw semantic-loaddefs mode-local find-func derived
eieio-load eieio-loaddefs cedet-load cedet-compat cedet-loaddefs eieio
warnings advice help-fns advice-preload byte-opt bytecomp byte-compile
inversion cl cl-19 go-mode-load cmake-mode thingatpt xcscope ring
easymenu ind-util preview-latex tex-site auto-loads edmacro kmacro
regexp-opt image-file paren linum china-util tooltip ediff-hook vc-hooks
lisp-float-type mwheel x-win x-dnd font-setting 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 dbusbind
system-font-setting font-render-setting gtk x-toolkit x multi-tty emacs)