unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
@ 2013-07-16 17:57 Lars Magne Ingebrigtsen
  2013-07-16 18:29 ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Lars Magne Ingebrigtsen @ 2013-07-16 17:57 UTC (permalink / raw)
  To: 14881


I've seen some increasingly odd cursor movements the last few weeks if I
have images in a buffer.  To reproduce, have a frame that's 800 pixels
high.  Eval the following:

(url-retrieve "http://quimby.gnus.org/circus/jukebox.php?image=micro.png&group=Phill%20Niblock&album=Touch%20Food%20%281%29"
	      (lambda (&rest args)
		(search-forward "\n\n")
		(let ((image (create-image
			      (buffer-substring (point) (point-max))
			      nil t)))
		  (pop-to-buffer "*test*")
		  (erase-buffer)
		  (dotimes (i 100)
		    (insert-image image "*")
		    (insert (format " foo %d\n" i))))))

Go to the first line in the buffer and hit `C-n'.  Instead of moving the
cursor to the next line, the buffer is shifted one line up instead.

`C-u 2 C-n' will move point two lines down, however.  So the weird
movement action apparently only happens when moving down a single line.



In GNU Emacs 24.3.50.45 (x86_64-unknown-linux-gnu, X toolkit, Xaw scroll bars)
 of 2013-07-16 on stories
Bzr revision: 113434 eggert@cs.ucla.edu-20130716163942-lzo8wm5ipj0rwarp
Windowing system distributor `The X.Org Foundation', version 11.0.11103000
System Description:	Debian GNU/Linux 7.0 (wheezy)

Important settings:
  value of $LANG: en_US
  locale-coding-system: iso-latin-1-unix
  default enable-multibyte-characters: t

Major mode: Fundamental

Minor modes in effect:
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t

Recent input:
<right> <right> <return> <return> C-x C-f <backspace> 
<return> q H-o C-a C-SPC M-> M-w <return> C-y <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <down> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> M-d m i c r o M-> C-x C-e M-< 
C-x 1 <down> <down> <down> <right> <down> <right> <right> 
C-n C-n C-n <right> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> M-< C-x b <return> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <down> <down> <down> C-e <down> <down> <down> 
<down> <left> <left> <left> <left> <left> <left> <left> 
<left> SPC % s <backspace> d <left> <left> <left> <left> 
<left> <left> <left> <left> * <backspace> ( i n s e 
r t SPC C-M-f SPC i C-e ) C-M-x q C-x o <backspace> 
) <return> C-x C-e q C-x o <up> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <left> 
M-d f o r m a t C-e C-x C-e M-< C-x 1 <down> <down> 
<down> <down> <down> <down> C-x k <return> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <left> M-d m c <backspace> i c r o <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> C-x C-e C-x 1 M-< <down> <down> <right> <right> 
<down> <down> <down> <right> <right> <down> <down> 
<down> <down> <down> C-u 2 <down> <down> <down> <down> 
C-x C-g C-x b C-g M-x r e p o <tab> r <tab> b <tab> 
<return>

Recent messages:
Entering debugger...
Back to top level.
Contacting host: quimby.gnus.org:80
#<buffer  *http quimby.gnus.org:80*-478322>
Mark set
Contacting host: quimby.gnus.org:80
#<buffer  *http quimby.gnus.org:80*-318834>
Mark set
Quit
Making completion list...

Load-path shadows:
/home/larsi/mgnus/lisp/compface hides ~/pgnus/contrib/compface
/home/larsi/src/clock.el/clock hides /home/larsi/lisp/clock
/home/larsi/src/cddb.el/expect hides /home/larsi/lisp/expect
/home/larsi/src/pvr.el/pvr hides /home/larsi/lisp/pvr
~/pgnus/contrib/vcard hides /home/larsi/lisp/vcard
/home/larsi/src/cddb.el/captitle hides /home/larsi/lisp/captitle
~/lisp/zenirc-2.112/src/zenirc-example hides /home/larsi/lisp/zenirc-example
/home/larsi/mgnus/lisp/format-spec hides /home/larsi/src/emacs/trunk/lisp/format-spec
/home/larsi/mgnus/lisp/hex-util hides /home/larsi/src/emacs/trunk/lisp/hex-util
/home/larsi/mgnus/lisp/color hides /home/larsi/src/emacs/trunk/lisp/color
/home/larsi/mgnus/lisp/md4 hides /home/larsi/src/emacs/trunk/lisp/md4
/home/larsi/mgnus/lisp/password-cache hides /home/larsi/src/emacs/trunk/lisp/password-cache
/home/larsi/mgnus/lisp/dns-mode hides /home/larsi/src/emacs/trunk/lisp/textmodes/dns-mode
/home/larsi/mgnus/lisp/sasl-ntlm hides /home/larsi/src/emacs/trunk/lisp/net/sasl-ntlm
/home/larsi/mgnus/lisp/dns hides /home/larsi/src/emacs/trunk/lisp/net/dns
/home/larsi/mgnus/lisp/hmac-def hides /home/larsi/src/emacs/trunk/lisp/net/hmac-def
/home/larsi/mgnus/lisp/ntlm hides /home/larsi/src/emacs/trunk/lisp/net/ntlm
/home/larsi/mgnus/lisp/tls hides /home/larsi/src/emacs/trunk/lisp/net/tls
/home/larsi/mgnus/lisp/sasl-digest hides /home/larsi/src/emacs/trunk/lisp/net/sasl-digest
/home/larsi/mgnus/lisp/netrc hides /home/larsi/src/emacs/trunk/lisp/net/netrc
/home/larsi/mgnus/lisp/sasl-cram hides /home/larsi/src/emacs/trunk/lisp/net/sasl-cram
/home/larsi/mgnus/lisp/hmac-md5 hides /home/larsi/src/emacs/trunk/lisp/net/hmac-md5
/home/larsi/mgnus/lisp/dig hides /home/larsi/src/emacs/trunk/lisp/net/dig
/home/larsi/mgnus/lisp/sasl hides /home/larsi/src/emacs/trunk/lisp/net/sasl
/home/larsi/mgnus/lisp/uudecode hides /home/larsi/src/emacs/trunk/lisp/mail/uudecode
/home/larsi/mgnus/lisp/hashcash hides /home/larsi/src/emacs/trunk/lisp/mail/hashcash
/home/larsi/mgnus/lisp/binhex hides /home/larsi/src/emacs/trunk/lisp/mail/binhex
/home/larsi/mgnus/lisp/nndoc hides /home/larsi/src/emacs/trunk/lisp/gnus/nndoc
/home/larsi/mgnus/lisp/mm-partial hides /home/larsi/src/emacs/trunk/lisp/gnus/mm-partial
/home/larsi/mgnus/lisp/gnus-srvr hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-srvr
/home/larsi/mgnus/lisp/mailcap hides /home/larsi/src/emacs/trunk/lisp/gnus/mailcap
/home/larsi/mgnus/lisp/gnus-range hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-range
/home/larsi/mgnus/lisp/rfc1843 hides /home/larsi/src/emacs/trunk/lisp/gnus/rfc1843
/home/larsi/mgnus/lisp/nneething hides /home/larsi/src/emacs/trunk/lisp/gnus/nneething
/home/larsi/mgnus/lisp/gnus-logic hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-logic
/home/larsi/mgnus/lisp/spam-wash hides /home/larsi/src/emacs/trunk/lisp/gnus/spam-wash
/home/larsi/mgnus/lisp/nnmail hides /home/larsi/src/emacs/trunk/lisp/gnus/nnmail
/home/larsi/mgnus/lisp/nnmbox hides /home/larsi/src/emacs/trunk/lisp/gnus/nnmbox
/home/larsi/mgnus/lisp/gssapi hides /home/larsi/src/emacs/trunk/lisp/gnus/gssapi
/home/larsi/mgnus/lisp/gnus-agent hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-agent
/home/larsi/mgnus/lisp/mail-parse hides /home/larsi/src/emacs/trunk/lisp/gnus/mail-parse
/home/larsi/mgnus/lisp/mml-smime hides /home/larsi/src/emacs/trunk/lisp/gnus/mml-smime
/home/larsi/mgnus/lisp/gnus-msg hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-msg
/home/larsi/mgnus/lisp/gnus-fun hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-fun
/home/larsi/mgnus/lisp/mail-source hides /home/larsi/src/emacs/trunk/lisp/gnus/mail-source
/home/larsi/mgnus/lisp/mm-encode hides /home/larsi/src/emacs/trunk/lisp/gnus/mm-encode
/home/larsi/mgnus/lisp/gnus-cache hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-cache
/home/larsi/mgnus/lisp/mm-util hides /home/larsi/src/emacs/trunk/lisp/gnus/mm-util
/home/larsi/mgnus/lisp/mm-archive hides /home/larsi/src/emacs/trunk/lisp/gnus/mm-archive
/home/larsi/mgnus/lisp/nnnil hides /home/larsi/src/emacs/trunk/lisp/gnus/nnnil
/home/larsi/mgnus/lisp/mml2015 hides /home/larsi/src/emacs/trunk/lisp/gnus/mml2015
/home/larsi/mgnus/lisp/nnoo hides /home/larsi/src/emacs/trunk/lisp/gnus/nnoo
/home/larsi/mgnus/lisp/messcompat hides /home/larsi/src/emacs/trunk/lisp/gnus/messcompat
/home/larsi/mgnus/lisp/gnus-sync hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-sync
/home/larsi/mgnus/lisp/nnweb hides /home/larsi/src/emacs/trunk/lisp/gnus/nnweb
/home/larsi/mgnus/lisp/nnrss hides /home/larsi/src/emacs/trunk/lisp/gnus/nnrss
/home/larsi/mgnus/lisp/legacy-gnus-agent hides /home/larsi/src/emacs/trunk/lisp/gnus/legacy-gnus-agent
/home/larsi/mgnus/lisp/nnspool hides /home/larsi/src/emacs/trunk/lisp/gnus/nnspool
/home/larsi/mgnus/lisp/compface hides /home/larsi/src/emacs/trunk/lisp/gnus/compface
/home/larsi/mgnus/lisp/smime hides /home/larsi/src/emacs/trunk/lisp/gnus/smime
/home/larsi/mgnus/lisp/ietf-drums hides /home/larsi/src/emacs/trunk/lisp/gnus/ietf-drums
/home/larsi/mgnus/lisp/yenc hides /home/larsi/src/emacs/trunk/lisp/gnus/yenc
/home/larsi/mgnus/lisp/gnus-delay hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-delay
/home/larsi/mgnus/lisp/gnus-async hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-async
/home/larsi/mgnus/lisp/nnmh hides /home/larsi/src/emacs/trunk/lisp/gnus/nnmh
/home/larsi/mgnus/lisp/mm-url hides /home/larsi/src/emacs/trunk/lisp/gnus/mm-url
/home/larsi/mgnus/lisp/gnus-picon hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-picon
/home/larsi/mgnus/lisp/gnus-bookmark hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-bookmark
/home/larsi/mgnus/lisp/gnus-diary hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-diary
/home/larsi/mgnus/lisp/html2text hides /home/larsi/src/emacs/trunk/lisp/gnus/html2text
/home/larsi/mgnus/lisp/nndraft hides /home/larsi/src/emacs/trunk/lisp/gnus/nndraft
/home/larsi/mgnus/lisp/auth-source hides /home/larsi/src/emacs/trunk/lisp/gnus/auth-source
/home/larsi/mgnus/lisp/gnus-bcklg hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-bcklg
/home/larsi/mgnus/lisp/gnus-win hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-win
/home/larsi/mgnus/lisp/gnus-salt hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-salt
/home/larsi/mgnus/lisp/rfc2045 hides /home/larsi/src/emacs/trunk/lisp/gnus/rfc2045
/home/larsi/mgnus/lisp/gnus-draft hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-draft
/home/larsi/mgnus/lisp/gnus-spec hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-spec
/home/larsi/mgnus/lisp/nnir hides /home/larsi/src/emacs/trunk/lisp/gnus/nnir
/home/larsi/mgnus/lisp/mm-uu hides /home/larsi/src/emacs/trunk/lisp/gnus/mm-uu
/home/larsi/mgnus/lisp/rfc2104 hides /home/larsi/src/emacs/trunk/lisp/gnus/rfc2104
/home/larsi/mgnus/lisp/nngateway hides /home/larsi/src/emacs/trunk/lisp/gnus/nngateway
/home/larsi/mgnus/lisp/gnus-sum hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-sum
/home/larsi/mgnus/lisp/mail-prsvr hides /home/larsi/src/emacs/trunk/lisp/gnus/mail-prsvr
/home/larsi/mgnus/lisp/gnus-dup hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-dup
/home/larsi/mgnus/lisp/score-mode hides /home/larsi/src/emacs/trunk/lisp/gnus/score-mode
/home/larsi/mgnus/lisp/starttls hides /home/larsi/src/emacs/trunk/lisp/gnus/starttls
/home/larsi/mgnus/lisp/plstore hides /home/larsi/src/emacs/trunk/lisp/gnus/plstore
/home/larsi/mgnus/lisp/gnus-topic hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-topic
/home/larsi/mgnus/lisp/gnus-notifications hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-notifications
/home/larsi/mgnus/lisp/registry hides /home/larsi/src/emacs/trunk/lisp/gnus/registry
/home/larsi/mgnus/lisp/mml-sec hides /home/larsi/src/emacs/trunk/lisp/gnus/mml-sec
/home/larsi/mgnus/lisp/nnmaildir hides /home/larsi/src/emacs/trunk/lisp/gnus/nnmaildir
/home/larsi/mgnus/lisp/nnbabyl hides /home/larsi/src/emacs/trunk/lisp/gnus/nnbabyl
/home/larsi/mgnus/lisp/sieve hides /home/larsi/src/emacs/trunk/lisp/gnus/sieve
/home/larsi/mgnus/lisp/qp hides /home/larsi/src/emacs/trunk/lisp/gnus/qp
/home/larsi/mgnus/lisp/nnregistry hides /home/larsi/src/emacs/trunk/lisp/gnus/nnregistry
/home/larsi/mgnus/lisp/gnus-art hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-art
/home/larsi/mgnus/lisp/gnus-dired hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-dired
/home/larsi/mgnus/lisp/gnus-util hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-util
/home/larsi/mgnus/lisp/nnheader hides /home/larsi/src/emacs/trunk/lisp/gnus/nnheader
/home/larsi/mgnus/lisp/gnus-demon hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-demon
/home/larsi/mgnus/lisp/message hides /home/larsi/src/emacs/trunk/lisp/gnus/message
/home/larsi/mgnus/lisp/rfc2231 hides /home/larsi/src/emacs/trunk/lisp/gnus/rfc2231
/home/larsi/mgnus/lisp/canlock hides /home/larsi/src/emacs/trunk/lisp/gnus/canlock
/home/larsi/mgnus/lisp/mm-extern hides /home/larsi/src/emacs/trunk/lisp/gnus/mm-extern
/home/larsi/mgnus/lisp/gnus-undo hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-undo
/home/larsi/mgnus/lisp/mm-bodies hides /home/larsi/src/emacs/trunk/lisp/gnus/mm-bodies
/home/larsi/mgnus/lisp/gnus-score hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-score
/home/larsi/mgnus/lisp/gnus-mh hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-mh
/home/larsi/mgnus/lisp/nnvirtual hides /home/larsi/src/emacs/trunk/lisp/gnus/nnvirtual
/home/larsi/mgnus/lisp/spam-report hides /home/larsi/src/emacs/trunk/lisp/gnus/spam-report
/home/larsi/mgnus/lisp/nndiary hides /home/larsi/src/emacs/trunk/lisp/gnus/nndiary
/home/larsi/mgnus/lisp/sieve-manage hides /home/larsi/src/emacs/trunk/lisp/gnus/sieve-manage
/home/larsi/mgnus/lisp/mml1991 hides /home/larsi/src/emacs/trunk/lisp/gnus/mml1991
/home/larsi/mgnus/lisp/gnus-eform hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-eform
/home/larsi/mgnus/lisp/mml hides /home/larsi/src/emacs/trunk/lisp/gnus/mml
/home/larsi/mgnus/lisp/gravatar hides /home/larsi/src/emacs/trunk/lisp/gnus/gravatar
/home/larsi/mgnus/lisp/nntp hides /home/larsi/src/emacs/trunk/lisp/gnus/nntp
/home/larsi/mgnus/lisp/gnus-setup hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-setup
/home/larsi/mgnus/lisp/ecomplete hides /home/larsi/src/emacs/trunk/lisp/gnus/ecomplete
/home/larsi/mgnus/lisp/rtree hides /home/larsi/src/emacs/trunk/lisp/gnus/rtree
/home/larsi/mgnus/lisp/gnus-int hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-int
/home/larsi/mgnus/lisp/gnus-sieve hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-sieve
/home/larsi/mgnus/lisp/smiley hides /home/larsi/src/emacs/trunk/lisp/gnus/smiley
/home/larsi/mgnus/lisp/gnus hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus
/home/larsi/mgnus/lisp/gnus-cus hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-cus
/home/larsi/mgnus/lisp/nnfolder hides /home/larsi/src/emacs/trunk/lisp/gnus/nnfolder
/home/larsi/mgnus/lisp/nnmairix hides /home/larsi/src/emacs/trunk/lisp/gnus/nnmairix
/home/larsi/mgnus/lisp/pop3 hides /home/larsi/src/emacs/trunk/lisp/gnus/pop3
/home/larsi/mgnus/lisp/gnus-start hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-start
/home/larsi/mgnus/lisp/nnml hides /home/larsi/src/emacs/trunk/lisp/gnus/nnml
/home/larsi/mgnus/lisp/gnus-vm hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-vm
/home/larsi/mgnus/lisp/gnus-mlspl hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-mlspl
/home/larsi/mgnus/lisp/gnus-registry hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-registry
/home/larsi/mgnus/lisp/gnus-ml hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-ml
/home/larsi/mgnus/lisp/gnus-gravatar hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-gravatar
/home/larsi/mgnus/lisp/spam hides /home/larsi/src/emacs/trunk/lisp/gnus/spam
/home/larsi/mgnus/lisp/gnus-cite hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-cite
/home/larsi/mgnus/lisp/flow-fill hides /home/larsi/src/emacs/trunk/lisp/gnus/flow-fill
/home/larsi/mgnus/lisp/mm-view hides /home/larsi/src/emacs/trunk/lisp/gnus/mm-view
/home/larsi/mgnus/lisp/gnus-html hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-html
/home/larsi/mgnus/lisp/gnus-uu hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-uu
/home/larsi/mgnus/lisp/deuglify hides /home/larsi/src/emacs/trunk/lisp/gnus/deuglify
/home/larsi/mgnus/lisp/spam-stat hides /home/larsi/src/emacs/trunk/lisp/gnus/spam-stat
/home/larsi/mgnus/lisp/nndir hides /home/larsi/src/emacs/trunk/lisp/gnus/nndir
/home/larsi/mgnus/lisp/gnus-kill hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-kill
/home/larsi/mgnus/lisp/gnus-ems hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-ems
/home/larsi/mgnus/lisp/gnus-group hides /home/larsi/src/emacs/trunk/lisp/gnus/gnus-group
/home/larsi/mgnus/lisp/nnagent hides /home/larsi/src/emacs/trunk/lisp/gnus/nnagent
/home/larsi/mgnus/lisp/.dir-locals hides /home/larsi/src/emacs/trunk/lisp/gnus/.dir-locals
/home/larsi/mgnus/lisp/sieve-mode hides /home/larsi/src/emacs/trunk/lisp/gnus/sieve-mode
/home/larsi/mgnus/lisp/rfc2047 hides /home/larsi/src/emacs/trunk/lisp/gnus/rfc2047
/home/larsi/mgnus/lisp/gmm-utils hides /home/larsi/src/emacs/trunk/lisp/gnus/gmm-utils
/home/larsi/mgnus/lisp/utf7 hides /home/larsi/src/emacs/trunk/lisp/gnus/utf7
/home/larsi/mgnus/lisp/nnimap hides /home/larsi/src/emacs/trunk/lisp/gnus/nnimap
/home/larsi/mgnus/lisp/mm-decode hides /home/larsi/src/emacs/trunk/lisp/gnus/mm-decode
/home/larsi/mgnus/lisp/time-date hides /home/larsi/src/emacs/trunk/lisp/calendar/time-date
/home/larsi/mgnus/lisp/parse-time hides /home/larsi/src/emacs/trunk/lisp/calendar/parse-time

Features:
(shadow hashcash ecomplete emacsbug sendmail url-cache help-mode discogs
json dae musicbrainz scan scrobble tellstick wave cddb captitle expect
copyright vc-cvs gnus-picon sort gnus-cite smiley ansi-color mule-util
shr-color color shr mm-archive gnus-async gnus-dup qp gnus-ml gmane
spam-gmane dns mm-url disp-table gnus-fun gnus-mdrtn gnus-topic pop3
nndoc nnmbox nndraft utf-7 nnimap utf7 nnmh nnml nnfolder parse-time
netrc gnutls network-stream starttls nnir spam-report spam spam-stat
gnus-uu yenc gnus-agent gnus-srvr gnus-score score-mode nnvirtual
gnus-msg gnus-art mm-uu mml2015 epg-config mm-view mml-smime smime dig
nntp gnus-cache gnus-sum nnoo gnus-group gnus-undo nnmail mail-source
gnus-start gnus-spec gnus-int gnus-range message format-spec rfc822 mml
mml-sec mailabbrev gmm-utils mailheader gnus-win gnus-load gnus gnus-ems
gnus-compat help-fns nnheader mail-utils debug uniquify debbugs-gnu
easy-mmode derived debbugs soap-client mm-decode mm-bodies mm-encode
url-http tls url-auth mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
url-gw url url-proxy url-privacy url-expand url-methods url-history
url-cookie url-domsuf url-util url-parse auth-source eieio byte-opt
bytecomp byte-compile cconv eieio-core gnus-util mm-util mail-prsvr
password-cache url-vars mailcap warnings xml ido flyspell ispell
benchmark w3m browse-url doc-view dired image-mode easymenu timezone
w3m-hist w3m-fb w3m-ems wid-edit w3m-ccl ccl w3m-favicon w3m-image
w3m-proc w3m-util cl-macs gv add-log mail-extr jka-compr cl nadvice
cl-loaddefs 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 prog-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 gfilenotify dynamic-setting system-font-setting
font-render-setting x-toolkit x multi-tty emacs)

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-16 17:57 bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?) Lars Magne Ingebrigtsen
@ 2013-07-16 18:29 ` Eli Zaretskii
  2013-07-16 18:39   ` Lars Magne Ingebrigtsen
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2013-07-16 18:29 UTC (permalink / raw)
  To: Lars Magne Ingebrigtsen; +Cc: 14881

> From: Lars Magne Ingebrigtsen <larsi@gnus.org>
> Date: Tue, 16 Jul 2013 19:57:24 +0200
> 
> I've seen some increasingly odd cursor movements the last few weeks if I
> have images in a buffer.  To reproduce, have a frame that's 800 pixels
> high.  Eval the following:
> 
> (url-retrieve "http://quimby.gnus.org/circus/jukebox.php?image=micro.png&group=Phill%20Niblock&album=Touch%20Food%20%281%29"
> 	      (lambda (&rest args)
> 		(search-forward "\n\n")
> 		(let ((image (create-image
> 			      (buffer-substring (point) (point-max))
> 			      nil t)))
> 		  (pop-to-buffer "*test*")
> 		  (erase-buffer)
> 		  (dotimes (i 100)
> 		    (insert-image image "*")
> 		    (insert (format " foo %d\n" i))))))
> 
> Go to the first line in the buffer and hit `C-n'.  Instead of moving the
> cursor to the next line, the buffer is shifted one line up instead.

It is not supposed to move to the next line, it is supposed to vscroll
by the number of pixels that is the height of the default face's font
(16 pixels on my system, YMMV).  That is what line-move-visual option
does when auto-window-vscroll is non-nil, and both are on by default.

IOW, this is by design, except that Emacs was supposed to "shift" the
buffer by 1`6 pixels, not by the entire size of the image.

I will take a look to see why the vscroll scrolls by too much, but if
you don't want that at all, just customize auto-window-vscroll to nil.

> `C-u 2 C-n' will move point two lines down, however.  So the weird
> movement action apparently only happens when moving down a single line.

That's because auto-window-vscroll is only in effect when moving by
single lines.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-16 18:29 ` Eli Zaretskii
@ 2013-07-16 18:39   ` Lars Magne Ingebrigtsen
  2013-07-16 19:36     ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Lars Magne Ingebrigtsen @ 2013-07-16 18:39 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 14881

Eli Zaretskii <eliz@gnu.org> writes:

> It is not supposed to move to the next line, it is supposed to vscroll
> by the number of pixels that is the height of the default face's font
> (16 pixels on my system, YMMV).  That is what line-move-visual option
> does when auto-window-vscroll is non-nil, and both are on by default.

I see.  Setting `auto-window-vscroll' to nil gets back the cursor
movement I expected to see.

Defaulting to the current cursor (non-)movement seems kinda un-obvious.
Why would anybody want `C-n' to scroll the window instead of er moving
the cursor down?

> IOW, this is by design, except that Emacs was supposed to "shift" the
> buffer by 1`6 pixels, not by the entire size of the image.

I rather like the way Emacs keeps the entire image in the buffer.
Scrolling so that an image is cut off (at the top) is not very pleasant.

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-16 18:39   ` Lars Magne Ingebrigtsen
@ 2013-07-16 19:36     ` Eli Zaretskii
  2013-07-16 19:41       ` Lars Magne Ingebrigtsen
  2013-07-17 10:50       ` Lars Magne Ingebrigtsen
  0 siblings, 2 replies; 13+ messages in thread
From: Eli Zaretskii @ 2013-07-16 19:36 UTC (permalink / raw)
  To: Lars Magne Ingebrigtsen; +Cc: 14881

> From: Lars Magne Ingebrigtsen <larsi@gnus.org>
> Cc: 14881@debbugs.gnu.org
> Date: Tue, 16 Jul 2013 20:39:58 +0200
> 
> Defaulting to the current cursor (non-)movement seems kinda un-obvious.
> Why would anybody want `C-n' to scroll the window instead of er moving
> the cursor down?

Because you don't want the images to jump.  If they do, you won't see
some of their parts, especially if the window height is small.

> I rather like the way Emacs keeps the entire image in the buffer.

??? You mean in the window, right?

> Scrolling so that an image is cut off (at the top) is not very pleasant.

Then I think you are in the minority here.  Most people want to see
the images they scroll across in their entirety, not just some parts
of them.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-16 19:36     ` Eli Zaretskii
@ 2013-07-16 19:41       ` Lars Magne Ingebrigtsen
  2013-07-17 10:50       ` Lars Magne Ingebrigtsen
  1 sibling, 0 replies; 13+ messages in thread
From: Lars Magne Ingebrigtsen @ 2013-07-16 19:41 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 14881

Eli Zaretskii <eliz@gnu.org> writes:

>> I rather like the way Emacs keeps the entire image in the buffer.
>
> ??? You mean in the window, right?

Yes.

>> Scrolling so that an image is cut off (at the top) is not very pleasant.
>
> Then I think you are in the minority here.  Most people want to see
> the images they scroll across in their entirety, not just some parts
> of them.

These images are smaller than the height of the window, so they are
displayed in their entirety, just as everybody would (or should :-))
want.

Showing an image that's higher than the window is a different matter.

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-16 19:36     ` Eli Zaretskii
  2013-07-16 19:41       ` Lars Magne Ingebrigtsen
@ 2013-07-17 10:50       ` Lars Magne Ingebrigtsen
  2013-07-17 16:54         ` Eli Zaretskii
  1 sibling, 1 reply; 13+ messages in thread
From: Lars Magne Ingebrigtsen @ 2013-07-17 10:50 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 14881

Eli Zaretskii <eliz@gnu.org> writes:

>> Defaulting to the current cursor (non-)movement seems kinda un-obvious.
>> Why would anybody want `C-n' to scroll the window instead of er moving
>> the cursor down?
>
> Because you don't want the images to jump.  If they do, you won't see
> some of their parts, especially if the window height is small.

In the example that started this bug report, there's no danger of images
jumping or not being shown, so I don't understand why users would want
`C-n' to do anything but behave as normal; i.e., go to the next line.

That's a pretty fundamental thing to do, and if you can't rely on `C-n'
taking you to the next line, lots of things get very, very confusing.

Now, if you have an image that's higher than the window size, then, yes,
perhaps `C-n' should do something else than going to the next line.  But
having such an image is not the normal use case.  The normal use case is
to have lots of smaller images in the window.

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-17 10:50       ` Lars Magne Ingebrigtsen
@ 2013-07-17 16:54         ` Eli Zaretskii
  2013-07-18 13:57           ` Lars Magne Ingebrigtsen
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2013-07-17 16:54 UTC (permalink / raw)
  To: Lars Magne Ingebrigtsen; +Cc: 14881-done

> From: Lars Magne Ingebrigtsen <larsi@gnus.org>
> Cc: 14881@debbugs.gnu.org
> Date: Wed, 17 Jul 2013 12:50:34 +0200
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> Defaulting to the current cursor (non-)movement seems kinda un-obvious.
> >> Why would anybody want `C-n' to scroll the window instead of er moving
> >> the cursor down?
> >
> > Because you don't want the images to jump.  If they do, you won't see
> > some of their parts, especially if the window height is small.
> 
> In the example that started this bug report, there's no danger of images
> jumping or not being shown, so I don't understand why users would want
> `C-n' to do anything but behave as normal; i.e., go to the next line.
> 
> That's a pretty fundamental thing to do, and if you can't rely on `C-n'
> taking you to the next line, lots of things get very, very confusing.

If you want C-n to always take you to the next line in interactive
usage, the you should set auto-window-vscroll to nil.
Non-interactively, you should call next-line with nil TRY-VSCROLL
argument.

C-n doesn't always take you to the next line since Emacs 22, and not
only with tall images.

> Now, if you have an image that's higher than the window size, then, yes,
> perhaps `C-n' should do something else than going to the next line.  But
> having such an image is not the normal use case.  The normal use case is
> to have lots of smaller images in the window.

"Normal" is in the eyes of the beholder.

Anyway, you should have what you wanted in trunk revision 113442.  I
hope you like it.  FWIW, this never worked well in Emacs (e.g., try
C-p in your test case with older Emacsen).





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-17 16:54         ` Eli Zaretskii
@ 2013-07-18 13:57           ` Lars Magne Ingebrigtsen
  2013-07-18 16:52             ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Lars Magne Ingebrigtsen @ 2013-07-18 13:57 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 14881

Eli Zaretskii <eliz@gnu.org> writes:

> C-n doesn't always take you to the next line since Emacs 22, and not
> only with tall images.

Well...  I'm using a lot of modes with (small) images in them, and `C-n'
has mostly taken me to the next line.  There's been some corner cases if
point was actually on an image, but it's mostly worked.  

> Anyway, you should have what you wanted in trunk revision 113442.  I
> hope you like it.

Great, now `C-n' reliably takes me to the next line; thanks.

> FWIW, this never worked well in Emacs (e.g., try
> C-p in your test case with older Emacsen).

Yeah, `C-p' in buffers with images has had a tendency to do random
things.  :-)  But it now seems to work perfectly.

However, there's a new (well, different) tiny problem with `C-n' now.
In the test buffer, go to the first line and press `C-n' until point is
at the last line in the buffer.  Press `C-n' again.  Point goes to the
next line, but the buffer is only scrolled up two lines instead of the
more natural four (perhaps).  `C-p' the other way does this the expected
way.

Nit-picking.  :-)

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-18 13:57           ` Lars Magne Ingebrigtsen
@ 2013-07-18 16:52             ` Eli Zaretskii
  2013-07-19 11:07               ` Lars Magne Ingebrigtsen
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2013-07-18 16:52 UTC (permalink / raw)
  To: Lars Magne Ingebrigtsen; +Cc: 14881

> From: Lars Magne Ingebrigtsen <larsi@gnus.org>
> Cc: 14881@debbugs.gnu.org
> Date: Thu, 18 Jul 2013 15:57:15 +0200
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > C-n doesn't always take you to the next line since Emacs 22, and not
> > only with tall images.
> 
> Well...  I'm using a lot of modes with (small) images in them, and `C-n'
> has mostly taken me to the next line.  There's been some corner cases if
> point was actually on an image, but it's mostly worked.  

You've been lucky, that's all.  Depending on how the lines and pixels
turn out, and also whether you have something line global-hl-line-mode
frobbing your post-command-hook, you can see either vscroll or
scroll-up being done by C-n, instead of going to the next line.

> However, there's a new (well, different) tiny problem with `C-n' now.
> In the test buffer, go to the first line and press `C-n' until point is
> at the last line in the buffer.  Press `C-n' again.  Point goes to the
> next line, but the buffer is only scrolled up two lines instead of the
> more natural four (perhaps).

I cannot reproduce this.  Is this in "emacs -Q"?  If so, how many
complete images do you see in the window before the C-n that scrolls two lines
instead of 4, and is there a partially-visible image at the bottom
(and if so, which part of it is visible)?

If this is not in "emacs -Q", I suspect that some scroll-* option was
customized to cause this.  Which one, and how did you customize it?





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-18 16:52             ` Eli Zaretskii
@ 2013-07-19 11:07               ` Lars Magne Ingebrigtsen
  2013-07-19 14:04                 ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Lars Magne Ingebrigtsen @ 2013-07-19 11:07 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 14881

Eli Zaretskii <eliz@gnu.org> writes:

> I cannot reproduce this.  Is this in "emacs -Q"?  If so, how many
> complete images do you see in the window before the C-n that scrolls two lines
> instead of 4, and is there a partially-visible image at the bottom
> (and if so, which part of it is visible)?

It's with "emacs -Q".

The frame is 521 pixels high, so I see six and a half images.  I think
it's debatable whether the current way it puts point after `C-n' is
wrong, but it seems unsymmetrical to what `C-p' is doing, at least.

For me, `C-n' when standing on the sixth image (with the seventh
half-visible) will put point on the fifth image (after scrolling).  I
think putting point on the third would possibly seem more intuitive.

If we're at the first image, `C-p' will place point on the fifth image,
which seems kinda natural.

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-19 11:07               ` Lars Magne Ingebrigtsen
@ 2013-07-19 14:04                 ` Eli Zaretskii
  2013-07-19 14:13                   ` Lars Magne Ingebrigtsen
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2013-07-19 14:04 UTC (permalink / raw)
  To: Lars Magne Ingebrigtsen; +Cc: 14881

> From: Lars Magne Ingebrigtsen <larsi@gnus.org>
> Cc: 14881@debbugs.gnu.org
> Date: Fri, 19 Jul 2013 13:07:22 +0200
> 
> For me, `C-n' when standing on the sixth image (with the seventh
> half-visible) will put point on the fifth image (after scrolling).  I
> think putting point on the third would possibly seem more intuitive.

I misunderstood your original description.  Yes, I see this, too.  But
it is simply a matter of deciding what is the "middle" line of a
window.  Emacs currently looks, starting from the window's beginning,
for the first screen line whose Y pixel coordinate is _past_ the
middle of the window.  I think that is what you see.

> If we're at the first image, `C-p' will place point on the fifth image,

Not here.  I see point on the same 5th image (starting from the window
beginning) with both C-p and C-n.  Are you sure you type C-p slowly
enough to see the effect of each one of them separately?

In any case, "M-x trace-redisplay RET" shows that redisplay takes a
different path when scrolling forward and back in this case.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-19 14:04                 ` Eli Zaretskii
@ 2013-07-19 14:13                   ` Lars Magne Ingebrigtsen
  2013-07-19 14:31                     ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Lars Magne Ingebrigtsen @ 2013-07-19 14:13 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 14881

Eli Zaretskii <eliz@gnu.org> writes:

> I misunderstood your original description.  Yes, I see this, too.  But
> it is simply a matter of deciding what is the "middle" line of a
> window.  Emacs currently looks, starting from the window's beginning,
> for the first screen line whose Y pixel coordinate is _past_ the
> middle of the window.  I think that is what you see.

Ah, I see.

>> If we're at the first image, `C-p' will place point on the fifth image,
>
> Not here.  I see point on the same 5th image (starting from the window
> beginning) with both C-p and C-n.  Are you sure you type C-p slowly
> enough to see the effect of each one of them separately?

Yes, that's what I was trying to explain that I was seeing, too.  :-)

But I see now -- `C-n' and `C-p' are consistent: They both place point
on the fifth image.  I was sorta expecting `C-n' to move a "over" the
middle to be more "symmetric".  But I guess this way of placing point
after scrolling makes sense.

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?)
  2013-07-19 14:13                   ` Lars Magne Ingebrigtsen
@ 2013-07-19 14:31                     ` Eli Zaretskii
  0 siblings, 0 replies; 13+ messages in thread
From: Eli Zaretskii @ 2013-07-19 14:31 UTC (permalink / raw)
  To: Lars Magne Ingebrigtsen; +Cc: 14881

> From: Lars Magne Ingebrigtsen <larsi@gnus.org>
> Cc: 14881@debbugs.gnu.org
> Date: Fri, 19 Jul 2013 16:13:18 +0200
> 
> But I see now -- `C-n' and `C-p' are consistent: They both place point
> on the fifth image.  I was sorta expecting `C-n' to move a "over" the
> middle to be more "symmetric".  But I guess this way of placing point
> after scrolling makes sense.

There's no "symmetry" here because Emacs's display routines always
examine text from the window start moving forward.  There's currently
no way of doing this backward, never was.





^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2013-07-19 14:31 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-16 17:57 bug#14881: 24.3.50; Odd cursor movement with images (or lines with different heights?) Lars Magne Ingebrigtsen
2013-07-16 18:29 ` Eli Zaretskii
2013-07-16 18:39   ` Lars Magne Ingebrigtsen
2013-07-16 19:36     ` Eli Zaretskii
2013-07-16 19:41       ` Lars Magne Ingebrigtsen
2013-07-17 10:50       ` Lars Magne Ingebrigtsen
2013-07-17 16:54         ` Eli Zaretskii
2013-07-18 13:57           ` Lars Magne Ingebrigtsen
2013-07-18 16:52             ` Eli Zaretskii
2013-07-19 11:07               ` Lars Magne Ingebrigtsen
2013-07-19 14:04                 ` Eli Zaretskii
2013-07-19 14:13                   ` Lars Magne Ingebrigtsen
2013-07-19 14:31                     ` Eli Zaretskii

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).