]> git.eshelyaron.com Git - emacs.git/commitdiff
Don't leave point amid text conversion edits if auto-fill transpires
authorPo Lu <luangruo@yahoo.com>
Wed, 8 Nov 2023 03:03:57 +0000 (11:03 +0800)
committerPo Lu <luangruo@yahoo.com>
Wed, 8 Nov 2023 03:03:57 +0000 (11:03 +0800)
* lisp/simple.el (analyze-text-conversion): Save point in
old-point after auto-fill completes, so that point-moved is not
set if point remains intact subsequent to the execution of both
hooks.

lisp/simple.el

index 3a5a81e00111683a2eaad845fd83d347474819cf..266a66500cb2cacf2fa81f291060431affc265bc 100644 (file)
@@ -11205,15 +11205,19 @@ seconds."
                      ;; whether or not auto-fill has actually taken
                      ;; place.
                      (old-undo-list buffer-undo-list)
+                     ;; Save the point position to return it there
+                     ;; later.
                      (old-point (point)))
                 (save-excursion
                   (if (and auto-fill-function newline-p)
                       (progn (goto-char (nth 2 edit))
                              (previous-logical-line)
-                             (funcall auto-fill-function))
+                             (funcall auto-fill-function)
+                             (setq old-point (point)))
                     (when (and auto-fill-function auto-fill-p)
-                      (progn (goto-char (nth 2 edit))
-                             (funcall auto-fill-function))))
+                      (goto-char (nth 2 edit))
+                      (funcall auto-fill-function)
+                      (setq old-point (point))))
                   ;; Record whether or not this edit should result in
                   ;; an undo boundary being added.
                   (setq any-nonephemeral