emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/simple.el


From: Kim F . Storm
Subject: [Emacs-diffs] Changes to emacs/lisp/simple.el
Date: Wed, 13 Jul 2005 06:29:40 -0400

Index: emacs/lisp/simple.el
diff -c emacs/lisp/simple.el:1.737 emacs/lisp/simple.el:1.738
*** emacs/lisp/simple.el:1.737  Sat Jul  9 20:46:26 2005
--- emacs/lisp/simple.el        Wed Jul 13 10:29:38 2005
***************
*** 3447,3460 ****
                          (signal 'end-of-buffer nil)
                        (setq done t)))
                  (when (and (not done)
                             (not (integerp selective-display))
                             (not (line-move-invisible-p (point))))
!                   (unless (overlays-in (max (1- pos-before) (point-min))
!                                        (min (1+ (point)) (point-max)))
!                     ;; We avoid vertical-motion when possible
!                     ;; because that has to fontify.
!                     (forward-line 1)
!                     (setq line-done t)))
                  (and (not done) (not line-done)
                       ;; Otherwise move a more sophisticated way.
                       (zerop (vertical-motion 1))
--- 3447,3459 ----
                          (signal 'end-of-buffer nil)
                        (setq done t)))
                  (when (and (not done)
+                            (> arg 1)  ;; Use vertical-motion for last move
                             (not (integerp selective-display))
                             (not (line-move-invisible-p (point))))
!                   ;; We avoid vertical-motion when possible
!                   ;; because that has to fontify.
!                   (forward-line 1)
!                   (setq line-done t))
                  (and (not done) (not line-done)
                       ;; Otherwise move a more sophisticated way.
                       (zerop (vertical-motion 1))
***************
*** 3474,3485 ****
                          (signal 'beginning-of-buffer nil)
                        (setq done t)))
                  (when (and (not done)
                             (not (integerp selective-display))
                             (not (line-move-invisible-p (1- (point)))))
!                   (unless (overlays-in (max (1- (point)) (point-min))
!                                        (min (1+ pos-before) (point-max)))
!                     (forward-line -1)
!                     (setq line-done t)))
                  (and (not done) (not line-done)
                       (zerop (vertical-motion -1))
                       (if (not noerror)
--- 3473,3483 ----
                          (signal 'beginning-of-buffer nil)
                        (setq done t)))
                  (when (and (not done)
+                            (< arg -1) ;; Use vertical-motion for last move
                             (not (integerp selective-display))
                             (not (line-move-invisible-p (1- (point)))))
!                   (forward-line -1)
!                   (setq line-done t))
                  (and (not done) (not line-done)
                       (zerop (vertical-motion -1))
                       (if (not noerror)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]