From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/18337 Path: main.gmane.org!not-for-mail From: Karl Kleinpaste Newsgroups: gmane.emacs.gnus.general Subject: Better NOV extra handling in p0.40 [patch] Date: 30 Oct 1998 14:10:20 -500 Sender: owner-ding@hpc.uh.edu Message-ID: NNTP-Posting-Host: coloc-standby.netfonds.no X-Trace: main.gmane.org 1035156878 5621 80.91.224.250 (20 Oct 2002 23:34:38 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sun, 20 Oct 2002 23:34:38 +0000 (UTC) Return-Path: Original-Received: from fisher.math.uh.edu (fisher.math.uh.edu [129.7.128.35]) by sclp3.sclp.com (8.8.5/8.8.5) with ESMTP id OAA10770 for ; Fri, 30 Oct 1998 14:11:31 -0500 (EST) Original-Received: from sina.hpc.uh.edu (Sina.HPC.UH.EDU [129.7.3.5]) by fisher.math.uh.edu (8.9.1/8.9.1) with ESMTP id NAB21153; Fri, 30 Oct 1998 13:11:11 -0600 (CST) Original-Received: by sina.hpc.uh.edu (TLB v0.09a (1.20 tibbs 1996/10/09 22:03:07)); Fri, 30 Oct 1998 13:11:04 -0600 (CST) Original-Received: from sclp3.sclp.com (root@sclp3.sclp.com [209.195.19.139]) by sina.hpc.uh.edu (8.7.3/8.7.3) with ESMTP id NAA20867 for ; Fri, 30 Oct 1998 13:10:54 -0600 (CST) Original-Received: from pocari-sweat.jprc.com (POCARI-SWEAT.JPRC.COM [207.86.147.217]) by sclp3.sclp.com (8.8.5/8.8.5) with ESMTP id OAA10739 for ; Fri, 30 Oct 1998 14:10:50 -0500 (EST) Original-Received: (from karl@localhost) by pocari-sweat.jprc.com (8.8.7/8.8.7) id OAA06241; Fri, 30 Oct 1998 14:10:20 -0500 Original-To: ding@gnus.org X-Face: "5(T0tZd{6}pd~YzBG8O/*EW,.]6]@`m^e;fv65W^Y&=d"M\1H}>T~4_.kcDD.O~y3k)a6h R;Nmi>9|>Nm${2IpM0^RcUEa\jcq?KOP)C&~x51l~zCHTulL^_T|u0I^kB'z@]{`2YjQu Original-Lines: 53 User-Agent: Gnus/5.07004 (Pterodactyl Gnus v0.40) XEmacs/20.4 (Emerald) Precedence: list X-Majordomo: 1.94.jlt7 Xref: main.gmane.org gmane.emacs.gnus.general:18337 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:18337 This updates the previous trivial bugfix patch in nnheader-parse-nov to do Something Real, to use a "-nov-field"-like macro to get it, and to be prepared to use that result in -insert-nov. --- ChangeLog~ Sun Oct 25 17:13:15 1998 +++ ChangeLog Fri Oct 30 14:05:05 1998 @@ -0,0 +1,6 @@ +1998-10-30 Karl Kleinpaste + + * nnheader.el (nnheader-nov-remainder): New macro. + (nnheader-parse-nov): Use it. + (nnheader-insert-nov): Handle new string case of extra. + --- nnheader.el.orig Fri Oct 30 13:54:31 1998 +++ nnheader.el Fri Oct 30 14:03:05 1998 @@ -290,6 +290,9 @@ (defmacro nnheader-nov-field () '(buffer-substring (point) (if (nnheader-nov-skip-field) (1- (point)) eol))) +(defmacro nnheader-nov-remainder () + '(buffer-substring (point) (if (search-forward "\n" eol 'move) (1- (point)) eol))) + (defmacro nnheader-nov-read-integer () '(prog1 (if (eq (char-after) ?\t) @@ -313,7 +316,9 @@ (if (eq (char-after) ?\n) nil (nnheader-nov-field)) ; misc - nil + (if (eq (char-after) ?\n) + nil + (nnheader-nov-remainder)) ; extra ))) (defun nnheader-insert-nov (header) @@ -336,10 +341,12 @@ (insert "Xref: " (or (mail-header-xref header) "") "\t")) (when (mail-header-extra header) (let ((extra (mail-header-extra header))) - (while extra - (insert (symbol-name (caar extra)) - ": " (cdar extra) "\t") - (pop extra)))) + (if (listp extra) ; extra is a prev'ly parsed list + (while extra + (insert (symbol-name (caar extra)) + ": " (cdar extra) "\t") + (pop extra)) + (insert extra)))) ; extra is a native string (insert "\n")) (defun nnheader-insert-article-line (article)