diff options
author | Bastien Guerry <bzg@altern.org> | 2013-01-22 13:57:57 +0100 |
---|---|---|
committer | Bastien Guerry <bzg@altern.org> | 2013-01-22 13:57:57 +0100 |
commit | 627b3faa3d720ff02fa777c5fe74088fbf45dba3 (patch) | |
tree | 3e68747a39b9bc49647d7244f2464d3c59192d38 | |
parent | f7f1b4bb7eeeff603bdbeeea1b9da07809c13b5b (diff) | |
parent | a85b393994d9dcfe12a457c5c9dd62d9090bdb06 (diff) | |
download | org-mode-627b3faa3d720ff02fa777c5fe74088fbf45dba3.tar.gz |
Merge branch 'maint'
Conflicts:
lisp/org.el
-rw-r--r-- | lisp/org.el | 97 |
1 files changed, 50 insertions, 47 deletions
diff --git a/lisp/org.el b/lisp/org.el index 843645f..0e9b38b 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -21603,53 +21603,56 @@ function installs the following ones: \"property\", Return fill prefix, as a string, or nil if current line isn't meant to be filled." (let (prefix) - (when (and (derived-mode-p 'message-mode) (message-in-body-p)) - (save-excursion - (beginning-of-line) - (cond ((looking-at message-cite-prefix-regexp) - (setq prefix (match-string-no-properties 0))) - ((looking-at org-outline-regexp) - (setq prefix ""))))) - (or prefix - (org-with-wide-buffer - (let* ((p (line-beginning-position)) - (element (save-excursion (beginning-of-line) - (org-element-at-point))) - (type (org-element-type element)) - (post-affiliated (org-element-property :post-affiliated element))) - (unless (and post-affiliated (< p post-affiliated)) - (case type - (comment (looking-at "[ \t]*# ?") (match-string 0)) - (footnote-definition "") - ((item plain-list) - (make-string (org-list-item-body-column - (or post-affiliated - (org-element-property :begin element))) - ? )) - (paragraph - ;; Fill prefix is usually the same as the current line, - ;; except if the paragraph is at the beginning of an item. - (let ((parent (org-element-property :parent element))) - (cond ((eq (org-element-type parent) 'item) - (make-string (org-list-item-body-column - (org-element-property :begin parent)) - ? )) - ((save-excursion (beginning-of-line) (looking-at "[ \t]+")) - (match-string 0)) - (t "")))) - (comment-block - ;; Only fill contents if P is within block boundaries. - (let* ((cbeg (save-excursion (goto-char post-affiliated) - (forward-line) - (point))) - (cend (save-excursion - (goto-char (org-element-property :end element)) - (skip-chars-backward " \r\t\n") - (line-beginning-position)))) - (when (and (>= p cbeg) (< p cend)) - (if (save-excursion (beginning-of-line) (looking-at "[ \t]+")) - (match-string 0) - ""))))))))))) + (catch 'exit + (when (derived-mode-p 'message-mode) + (save-excursion + (beginning-of-line) + (cond ((or (not (message-in-body-p)) + (looking-at orgtbl-line-start-regexp)) + (throw 'exit nil)) + ((looking-at message-cite-prefix-regexp) + (throw 'exit (match-string-no-properties 0))) + ((looking-at org-outline-regexp) + (throw 'exit (make-string (length (match-string 0)) ? )))))) + (org-with-wide-buffer + (let* ((p (line-beginning-position)) + (element (save-excursion (beginning-of-line) + (org-element-at-point))) + (type (org-element-type element)) + (post-affiliated (org-element-property :post-affiliated element))) + (unless (and post-affiliated (< p post-affiliated)) + (case type + (comment (looking-at "[ \t]*# ?") (match-string 0)) + (footnote-definition "") + ((item plain-list) + (make-string (org-list-item-body-column + (or post-affiliated + (org-element-property :begin element))) + ? )) + (paragraph + ;; Fill prefix is usually the same as the current line, + ;; except if the paragraph is at the beginning of an item. + (let ((parent (org-element-property :parent element))) + (cond ((eq (org-element-type parent) 'item) + (make-string (org-list-item-body-column + (org-element-property :begin parent)) + ? )) + ((save-excursion (beginning-of-line) (looking-at "[ \t]+")) + (match-string 0)) + (t "")))) + (comment-block + ;; Only fill contents if P is within block boundaries. + (let* ((cbeg (save-excursion (goto-char post-affiliated) + (forward-line) + (point))) + (cend (save-excursion + (goto-char (org-element-property :end element)) + (skip-chars-backward " \r\t\n") + (line-beginning-position)))) + (when (and (>= p cbeg) (< p cend)) + (if (save-excursion (beginning-of-line) (looking-at "[ \t]+")) + (match-string 0) + ""))))))))))) (declare-function message-goto-body "message" ()) (defvar message-cite-prefix-regexp) ; From message.el |