(article-begin . "^#! *rnews +\\([0-9]+\\) *\n")
(body-end-function . nndoc-rnews-body-end))
(mbox
- (article-begin .
- ,(let ((delim (concat "^" message-unix-mail-delimiter)))
- (if (string-match "\n\\'" delim)
- (substring delim 0 (match-beginning 0))
- delim)))
+ (article-begin . "^From \\([^ \n]*\\(\\|\".*\"[^ \n]*\\)\\) ?\\([^ \n]*\\) *\\([^ ]*\\) *\\([0-9]*\\) *\\([0-9:]*\\) *\\([A-Z]?[A-Z]?[A-Z][A-Z]\\( DST\\)?\\|[-+]?[0-9][0-9][0-9][0-9]\\|\\) * [0-9][0-9]\\([0-9]*\\) *\\([A-Z]?[A-Z]?[A-Z][A-Z]\\( DST\\)?\\|[-+]?[0-9][0-9][0-9][0-9]\\|\\) *\\(remote from .*\\)?\n")
+ (article-begin-function . nndoc-mbox-article-begin)
(body-end-function . nndoc-mbox-body-end))
(babyl
(article-begin . "\^_\^L *\n")
(defvoo nndoc-first-article nil)
(defvoo nndoc-article-end nil)
(defvoo nndoc-article-begin nil)
+(defvoo nndoc-article-begin-function nil)
(defvoo nndoc-head-begin nil)
(defvoo nndoc-head-end nil)
(defvoo nndoc-file-end nil)
nndoc-body-begin nndoc-body-end-function nndoc-body-end
nndoc-prepare-body nndoc-article-transform
nndoc-generate-head nndoc-body-begin-function
- nndoc-head-begin-function)))
+ nndoc-head-begin-function nndoc-article-begin-function)))
(while vars
(set (pop vars) nil)))
(let* (defs guess)
;; Go through the file.
(while (if (and first nndoc-first-article)
(nndoc-search nndoc-first-article)
- (nndoc-search nndoc-article-begin))
+ (if nndoc-article-begin-function
+ (funcall nndoc-article-begin-function)
+ (nndoc-search nndoc-article-begin)))
(setq first nil)
(cond (nndoc-head-begin-function
(funcall nndoc-head-begin-function))
(funcall nndoc-body-end-function))
(and nndoc-body-end
(nndoc-search nndoc-body-end))
- (nndoc-search nndoc-article-begin)
+ (if nndoc-article-begin-function
+ (funcall nndoc-article-begin-function)
+ (nndoc-search nndoc-article-begin))
(progn
(goto-char (point-max))
(when nndoc-file-end
(and (re-search-forward nndoc-article-begin nil t)
(goto-char (match-beginning 0))))
+(defun nndoc-mbox-article-begin ()
+ (when (re-search-forward nndoc-article-begin nil t)
+ (goto-char (match-beginning 0))))
+
(defun nndoc-mbox-body-end ()
(let ((beg (point))
len end)