aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa1997-08-28 04:51:02 +0000
committerKenichi Handa1997-08-28 04:51:02 +0000
commit2bd3dcae0eba8e09cd07f180506493a22905d5cc (patch)
treef758d899f65f5e5bb2f11660d13b863c5b56ac58
parent1613b43af72d56ffffc939f032e7af5e2505f517 (diff)
downloademacs-2bd3dcae0eba8e09cd07f180506493a22905d5cc.tar.gz
emacs-2bd3dcae0eba8e09cd07f180506493a22905d5cc.zip
(gnus-structured-field-decoder): New variable.
(gnus-unstructured-field-decoder): New variable. (gnus-get-newsgroup-headers, gnus-nov-parse-line): Use `gnus-structured-field-decoder' and `gnus-unstructured-field-decoder' for Subject field.
-rw-r--r--lisp/gnus/gnus-sum.el28
1 files changed, 24 insertions, 4 deletions
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el
index 26bb9cdc715..694e70a640a 100644
--- a/lisp/gnus/gnus-sum.el
+++ b/lisp/gnus/gnus-sum.el
@@ -619,6 +619,17 @@ is not run if `gnus-visual' is nil."
619 :group 'gnus-summary-visual 619 :group 'gnus-summary-visual
620 :type 'hook) 620 :type 'hook)
621 621
622;; 1997/5/4 by MORIOKA Tomohiko <morioka@jaist.ac.jp>
623(defcustom gnus-structured-field-decoder 'identity
624 "Function to decode non-ASCII characters in structured field for summary."
625 :group 'gnus-various
626 :type 'function)
627
628(defcustom gnus-unstructured-field-decoder 'identity
629 "Function to decode non-ASCII characters in unstructured field for summary."
630 :group 'gnus-various
631 :type 'function)
632
622(defcustom gnus-parse-headers-hook 633(defcustom gnus-parse-headers-hook
623 (list 'gnus-decode-rfc1522) 634 (list 'gnus-decode-rfc1522)
624 "*A hook called before parsing the headers." 635 "*A hook called before parsing the headers."
@@ -4144,12 +4155,18 @@ The resulting hash table is returned, or nil if no Xrefs were found."
4144 (progn 4155 (progn
4145 (goto-char p) 4156 (goto-char p)
4146 (if (search-forward "\nsubject: " nil t) 4157 (if (search-forward "\nsubject: " nil t)
4147 (nnheader-header-value) "(none)")) 4158 ;; 1997/5/4 by MORIOKA Tomohiko <morioka@jaist.ac.jp>
4159 (funcall
4160 gnus-unstructured-field-decoder (nnheader-header-value))
4161 "(none)"))
4148 ;; From. 4162 ;; From.
4149 (progn 4163 (progn
4150 (goto-char p) 4164 (goto-char p)
4151 (if (search-forward "\nfrom: " nil t) 4165 (if (search-forward "\nfrom: " nil t)
4152 (nnheader-header-value) "(nobody)")) 4166 ;; 1997/5/4 by MORIOKA Tomohiko <morioka@jaist.ac.jp>
4167 (funcall
4168 gnus-structured-field-decoder (nnheader-header-value))
4169 "(nobody)"))
4153 ;; Date. 4170 ;; Date.
4154 (progn 4171 (progn
4155 (goto-char p) 4172 (goto-char p)
@@ -4284,8 +4301,11 @@ The resulting hash table is returned, or nil if no Xrefs were found."
4284 (setq header 4301 (setq header
4285 (vector 4302 (vector
4286 number ; number 4303 number ; number
4287 (gnus-nov-field) ; subject 4304 ;; 1997/5/4 by MORIOKA Tomohiko <morioka@jaist.ac.jp>
4288 (gnus-nov-field) ; from 4305 (funcall
4306 gnus-unstructured-field-decoder (gnus-nov-field)) ; subject
4307 (funcall
4308 gnus-structured-field-decoder (gnus-nov-field)) ; from
4289 (gnus-nov-field) ; date 4309 (gnus-nov-field) ; date
4290 (setq id (or (gnus-nov-field) 4310 (setq id (or (gnus-nov-field)
4291 (nnheader-generate-fake-message-id))) ; id 4311 (nnheader-generate-fake-message-id))) ; id