From 4f7a3b24f8fd662adc637f30fc7205d5c1a1fe95 Mon Sep 17 00:00:00 2001 From: yamaoka Date: Wed, 18 Jul 2001 22:11:58 +0000 Subject: [PATCH] Synch with Oort Gnus. --- lisp/ChangeLog | 18 ++++++++++++++++++ lisp/gnus-eform.el | 4 +++- lisp/gnus-group.el | 1 + lisp/gnus-sum.el | 10 +++++++++- lisp/gnus-topic.el | 1 + lisp/mml.el | 31 +++++++++++++++++++++++++------ texi/ChangeLog | 4 ++++ texi/gnus-ja.texi | 4 ++-- texi/gnus.texi | 4 ++-- 9 files changed, 65 insertions(+), 12 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 6c2cbef..d575ef8 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,21 @@ +2001-07-18 12:00:00 ShengHuo ZHU + + * gnus-sum.el (gnus-summary-import-article): Insert date if + doesn't exist. + +2001-07-18 11:00:00 ShengHuo ZHU + + * mml.el (mml-content-type-parameters): New. + (mml-content-disposition-parameters): New. + (mml-insert-mime-headers): Use them. + (mml-parse-1): Accept charset. + +2001-07-17 22:00:00 ShengHuo ZHU + + * gnus-group.el (gnus-group-select-group): Doc fix. + + * gnus-eform.el (gnus-edit-form-done): Return nil if end-of-file. + 2001-07-17 Katsumi Yamaoka * dgnushack.el (dgnushack-make-auto-load): Advise `make-autoload' diff --git a/lisp/gnus-eform.el b/lisp/gnus-eform.el index 9fe7242..3c1ecc1 100644 --- a/lisp/gnus-eform.el +++ b/lisp/gnus-eform.el @@ -114,7 +114,9 @@ of the buffer." "Update changes and kill the current buffer." (interactive) (goto-char (point-min)) - (let ((form (read (current-buffer))) + (let ((form (condition-case nil + (read (current-buffer)) + (end-of-file nil))) (func gnus-edit-form-done-function)) (gnus-edit-form-exit) (funcall func form))) diff --git a/lisp/gnus-group.el b/lisp/gnus-group.el index 11ab2d5..263d5a6 100644 --- a/lisp/gnus-group.el +++ b/lisp/gnus-group.el @@ -1780,6 +1780,7 @@ group." (defun gnus-group-select-group (&optional all) "Select this newsgroup. No article is selected automatically. +If the group is opened, just switch the summary buffer. If ALL is non-nil, already read articles become readable. If ALL is a number, fetch this number of articles." (interactive "P") diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 40388c5..b12878c 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -8214,7 +8214,15 @@ latter case, they will be copied into the relevant groups." (erase-buffer) (nnheader-insert-file-contents file) (goto-char (point-min)) - (unless (nnheader-article-p) + (if (nnheader-article-p) + (save-restriction + (goto-char (point-min)) + (search-forward "\n\n" nil t) + (narrow-to-region (point-min) (1- (point))) + (goto-char (point-min)) + (unless (re-search-forward "^date:" nil t) + (goto-char (point-max)) + (insert "Date: " (message-make-date (nth 5 atts)) "\n"))) ;; This doesn't look like an article, so we fudge some headers. (setq atts (file-attributes file) lines (count-lines (point-min) (point-max))) diff --git a/lisp/gnus-topic.el b/lisp/gnus-topic.el index 9c654a3..4774a8c 100644 --- a/lisp/gnus-topic.el +++ b/lisp/gnus-topic.el @@ -1122,6 +1122,7 @@ articles in the topic and its subtopics." (defun gnus-topic-select-group (&optional all) "Select this newsgroup. No article is selected automatically. +If the group is opened, just switch the summary buffer. If ALL is non-nil, already read articles become readable. If ALL is a number, fetch this number of articles. diff --git a/lisp/mml.el b/lisp/mml.el index ad1c450..d8346cc 100644 --- a/lisp/mml.el +++ b/lisp/mml.el @@ -37,6 +37,20 @@ (autoload 'message-fetch-field "message") (autoload 'message-posting-charset "message")) +(defcustom mml-content-type-parameters + '(name access-type expiration size permission format) + "*A list of acceptable parameters in MML tag. +These parameters are generated in Content-Type header if exists." + :type '(repeat (symbol :tag "Parameter")) + :group 'message) + +(defcustom mml-content-disposition-parameters + '(filename creation-date modification-date read-date) + "*A list of acceptable parameters in MML tag. +These parameters are generated in Content-Disposition header if exists." + :type '(repeat (symbol :tag "Parameter")) + :group 'message) + (defvar mml-generate-multipart-alist nil "*Alist of multipart generation functions. Each entry has the form (NAME . FUNCTION), where @@ -121,8 +135,13 @@ one charsets.") (setq raw (cdr (assq 'raw tag)) point (point) contents (mml-read-part (eq 'mml (car tag))) - charsets (if raw nil - (mm-find-mime-charset-region point (point)))) + charsets (cond + (raw nil) + ((assq 'charset tag) + (list + (intern (downcase (cdr (assq 'charset tag)))))) + (t + (mm-find-mime-charset-region point (point))))) (when (and (not raw) (memq nil charsets)) (if (or (memq 'unknown-encoding mml-confirmation-set) (message-options-get 'unknown-encoding) @@ -478,7 +497,7 @@ If MML is non-nil, return the buffer up till the correspondent mml tag." (let (parameters disposition description) (setq parameters (mml-parameter-string - cont '(name access-type expiration size permission))) + cont mml-content-type-parameters)) (when (or charset parameters (not (equal type mml-generate-default-type))) @@ -491,17 +510,17 @@ If MML is non-nil, return the buffer up till the correspondent mml tag." "charset" (symbol-name charset)))) (when parameters (mml-insert-parameter-string - cont '(name access-type expiration size permission))) + cont mml-content-type-parameters)) (insert "\n")) (setq parameters (mml-parameter-string - cont '(filename creation-date modification-date read-date))) + cont mml-content-disposition-parameters)) (when (or (setq disposition (cdr (assq 'disposition cont))) parameters) (insert "Content-Disposition: " (or disposition "inline")) (when parameters (mml-insert-parameter-string - cont '(filename creation-date modification-date read-date))) + cont mml-content-disposition-parameters)) (insert "\n")) (unless (eq encoding '7bit) (insert (format "Content-Transfer-Encoding: %s\n" encoding))) diff --git a/texi/ChangeLog b/texi/ChangeLog index daa6da4..de0d83c 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,3 +1,7 @@ +2001-07-17 22:00:00 ShengHuo ZHU + + * gnus.texi (Searching for Articles): Raw articles. + 2001-07-16 Kai Gro,A_(Bjohann * message.texi (Insertion): Refer to gnus-cite-attribution-suffix. diff --git a/texi/gnus-ja.texi b/texi/gnus-ja.texi index 11c9d8e..317f8bc 100644 --- a/texi/gnus-ja.texi +++ b/texi/gnus-ja.texi @@ -8355,13 +8355,13 @@ Gnus $B$N(B info $B$N@a(B (node) $B$K0\F0$7$^$9(B (@code{gnus-info-find-no @item M-s @kindex M-s ($B35N,(B) @findex gnus-summary-search-article-forward -$BD>8e$K$"$kA4$F$N5-;v$r@55,I=8=$G8!:w$7$^(B +$BD>8e$K$"$kA4$F$N(B ($B@8$N(B) $B5-;v$r@55,I=8=$G8!:w$7$^(B $B$9(B (@code{gnus-summary-search-article-forward})$B!#(B @item M-r @kindex M-r ($B35N,(B) @findex gnus-summary-search-article-backward -$BA0$K$"$kA4$F$N5-;v$r@55,I=8=$G8!:w$7$^(B +$BA0$K$"$kA4$F$N(B ($B@8$N(B) $B5-;v$r@55,I=8=$G8!:w$7$^(B $B$9(B (@code{gnus-summary-search-article-backward})$B!#(B @item & diff --git a/texi/gnus.texi b/texi/gnus.texi index 6dc1cb1..ff4e872 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -8887,13 +8887,13 @@ Go to the gnus info node (@code{gnus-info-find-node}). @item M-s @kindex M-s (Summary) @findex gnus-summary-search-article-forward -Search through all subsequent articles for a regexp +Search through all subsequent (raw) articles for a regexp (@code{gnus-summary-search-article-forward}). @item M-r @kindex M-r (Summary) @findex gnus-summary-search-article-backward -Search through all previous articles for a regexp +Search through all previous (raw) articles for a regexp (@code{gnus-summary-search-article-backward}). @item & -- 1.7.10.4