diff options
author | Nicolas Goaziou <n.goaziou@gmail.com> | 2013-08-22 21:45:28 +0200 |
---|---|---|
committer | Nicolas Goaziou <n.goaziou@gmail.com> | 2013-08-22 21:54:52 +0200 |
commit | 9e51049b22c90df349ae914d8142362b5bf22090 (patch) | |
tree | 88fe2c5954d74090e88f206d17891242be584e60 | |
parent | 13cb28a227275d8d54193267159d6fa5e88650ab (diff) | |
download | org-mode-9e51049b22c90df349ae914d8142362b5bf22090.tar.gz |
Fix filling with `adaptive-fill-regexp'
* lisp/org.el (org-adaptive-fill-function): Look for a fill prefix at
the beginning of the paragraph and subsquently on its second line
instead of the current line.
* testing/lisp/test-org.el: Add test
-rw-r--r-- | lisp/org.el | 10 | ||||
-rw-r--r-- | testing/lisp/test-org.el | 23 |
2 files changed, 29 insertions, 4 deletions
diff --git a/lisp/org.el b/lisp/org.el index 6caa0b0..0601a36 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -22163,7 +22163,15 @@ matches in paragraphs or comments, use it." (make-string (org-list-item-body-column (org-element-property :begin parent)) ? )) - ((looking-at adaptive-fill-regexp) (match-string 0)) + ((and adaptive-fill-regexp + ;; Locally disable + ;; `adaptive-fill-function' to let + ;; `fill-context-prefix' handle + ;; `adaptive-fill-regexp' variable. + (let (adaptive-fill-function) + (fill-context-prefix + post-affiliated + (org-element-property :end element))))) ((looking-at "[ \t]+") (match-string 0)) (t ""))))) (comment-block diff --git a/testing/lisp/test-org.el b/testing/lisp/test-org.el index 53300eb..7fb7d42 100644 --- a/testing/lisp/test-org.el +++ b/testing/lisp/test-org.el @@ -273,13 +273,30 @@ (buffer-string))))) ;; Auto fill paragraph when `adaptive-fill-regexp' matches. (should - (equal "> 12345\n> 7890" + (equal "> 12345\n 7890" (org-test-with-temp-text "> 12345 7890" - (let ((fill-column 5) - (adaptive-fill-regexp "[ \t]*>+[ \t]*")) + (let ((fill-column 10) + (adaptive-fill-regexp "[ \t]*>+[ \t]*") + (adaptive-fill-first-line-regexp "\\`[ ]*\\'")) (end-of-line) (org-auto-fill-function) (buffer-string))))) + (should + (equal "> 12345\n> 12345\n> 7890" + (org-test-with-temp-text "> 12345\n> 12345 7890" + (let ((fill-column 10) + (adaptive-fill-regexp "[ \t]*>+[ \t]*")) + (goto-char (point-max)) + (org-auto-fill-function) + (buffer-string))))) + (should-not + (equal " 12345\n *12345\n *12345" + (org-test-with-temp-text " 12345\n *12345 12345" + (let ((fill-column 10) + (adaptive-fill-regexp "[ \t]*>+[ \t]*")) + (goto-char (point-max)) + (org-auto-fill-function) + (buffer-string))))) ;; Auto fill comments. (should (equal " # 12345\n # 7890" |