Fix auto filling in a paragraph directly following a comment

* lisp/org.el (org-auto-fill-function): Make sure `adaptive-fill-mode'
  mode is nil when pre-computed `fill-prefix' is the empty string.
  Otherwise filling functions from fill.el think it has to be computed
  again and overwrite it.
This commit is contained in:
Nicolas Goaziou 2012-10-20 11:58:16 +02:00
parent 92199873c5
commit 93040f4671
2 changed files with 20 additions and 1 deletions

View File

@ -21065,7 +21065,10 @@ a footnote definition, try to fill the first paragraph within."
;; Check if auto-filling is meaningful.
(let ((fc (current-fill-column)))
(when (and fc (> (current-column) fc))
(let ((fill-prefix (org-adaptive-fill-function)))
(let* ((fill-prefix (org-adaptive-fill-function))
;; Enforce empty fill prefix, if required. Otherwise, it
;; will be computed again.
(adaptive-fill-mode (not (equal fill-prefix ""))))
(when fill-prefix (do-auto-fill))))))
(defun org-comment-line-break-function (&optional soft)

View File

@ -254,6 +254,22 @@ http://article.gmane.org/gmane.emacs.orgmode/21459/"
(end-of-line)
(org-auto-fill-function)
(buffer-string)))))
;; A hash within a line isn't a comment.
(should-not
(equal "12345 # 7890\n# 1"
(org-test-with-temp-text "12345 # 7890 1"
(let ((fill-column 12))
(end-of-line)
(org-auto-fill-function)
(buffer-string)))))
;; Correctly interpret empty prefix.
(should-not
(equal "# a\n# b\nRegular\n# paragraph"
(org-test-with-temp-text "# a\n# b\nRegular paragraph"
(let ((fill-column 12))
(end-of-line 3)
(org-auto-fill-function)
(buffer-string)))))
;; Comment block: auto fill contents.
(should
(equal "#+BEGIN_COMMENT\n12345\n7890\n#+END_COMMENT"