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: Richard M. Stallman
Subject: [Emacs-diffs] Changes to emacs/lisp/simple.el
Date: Mon, 22 Apr 2002 18:35:47 -0400

Index: emacs/lisp/simple.el
diff -c emacs/lisp/simple.el:1.537 emacs/lisp/simple.el:1.538
*** emacs/lisp/simple.el:1.537  Thu Apr 18 20:05:22 2002
--- emacs/lisp/simple.el        Mon Apr 22 18:35:46 2002
***************
*** 2638,2649 ****
        ;; Set REPEAT to t to repeat the whole thing.
        (setq repeat nil)
  
!       ;; Move to the desired column.
!       (line-move-to-column column)
! 
!       (let ((new (point))
            (line-beg (save-excursion (beginning-of-line) (point)))
!           (line-end (save-excursion (end-of-line) (point))))
  
        ;; Process intangibility within a line.
        ;; Move to the chosen destination position from above,
--- 2638,2654 ----
        ;; Set REPEAT to t to repeat the whole thing.
        (setq repeat nil)
  
!       (let (new
            (line-beg (save-excursion (beginning-of-line) (point)))
!           (line-end
!            ;; Compute the end of the line
!            ;; ignoring effectively intangible newlines.
!            (let ((inhibit-point-motion-hooks nil))
!              (save-excursion (end-of-line) (point)))))
! 
!       ;; Move to the desired column.
!       (line-move-to-column column)
!       (setq new (point))
  
        ;; Process intangibility within a line.
        ;; Move to the chosen destination position from above,
***************
*** 2656,2662 ****
          ;; If intangibility moves us to a different (later) place
          ;; in the same line, use that as the destination.
          (if (<= (point) line-end)
!             (setq new (point))))
  
        ;; Now move to the updated destination, processing fields
        ;; as well as intangibility.
--- 2661,2675 ----
          ;; If intangibility moves us to a different (later) place
          ;; in the same line, use that as the destination.
          (if (<= (point) line-end)
!             (setq new (point))
!           ;; If that position is "too late",
!           ;; try the previous allowable position.
!           ;; See if it is ok.
!           (backward-char)
!           (if (<= (point) line-end)
!               (setq new (point))
!             ;; As a last resort, use the end of the line.
!             (setq new line-end))))
  
        ;; Now move to the updated destination, processing fields
        ;; as well as intangibility.
***************
*** 2666,2672 ****
           (constrain-to-field new opoint nil t
                               'inhibit-line-move-field-capture)))
  
!       ;; If intangibility processing moved us to a different line,
        ;; retry everything within that new line.
        (when (or (< (point) line-beg) (> (point) line-end))
          ;; Repeat the intangibility and field processing.
--- 2679,2685 ----
           (constrain-to-field new opoint nil t
                               'inhibit-line-move-field-capture)))
  
!       ;; If all this moved us to a different line,
        ;; retry everything within that new line.
        (when (or (< (point) line-beg) (> (point) line-end))
          ;; Repeat the intangibility and field processing.



reply via email to

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