aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiles Bader2005-10-15 00:20:58 +0000
committerMiles Bader2005-10-15 00:20:58 +0000
commitd3a597b7b41c2ebdb457e7c8bb037958138028f2 (patch)
treed1053570f246598e695e42e71ecb715778928c15
parent03ab074b43d210ccf8481bac00f3c2697bf3a019 (diff)
downloademacs-d3a597b7b41c2ebdb457e7c8bb037958138028f2.tar.gz
emacs-d3a597b7b41c2ebdb457e7c8bb037958138028f2.zip
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-597
Merge from gnus--rel--5.10 Patches applied: * gnus--rel--5.10 (patch 133-141) - Update from CVS - Merge from emacs--cvs-trunk--0 - Update from CVS: texi/gnus.texi (RSS): Fix key description. - Update from CVS: texi/gnus.texi (Document Server Internals): Addition. 2005-10-04 David Hansen <david.hansen@gmx.net> * lisp/gnus/nnrss.el (nnrss-request-article): Add support for the comments tag. (nnrss-check-group): Ditto. 2005-10-14 Katsumi Yamaoka <yamaoka@jpl.org> * man/gnus.texi (Document Server Internals): Addition. 2005-10-13 Katsumi Yamaoka <yamaoka@jpl.org> * man/gnus.texi (A note on namespaces): Fix RFC reference. 2005-10-12 Katsumi Yamaoka <yamaoka@jpl.org> * man/gnus.texi (RSS): Fix key description. 2005-10-11 Katsumi Yamaoka <yamaoka@jpl.org> * man/gnus.texi: Emacs/w3 -> Emacs/W3. (Browsing the Web): Fix description. (Web Searches): Ditto. (Customizing W3): Ditto. 2005-10-07 Katsumi Yamaoka <yamaoka@jpl.org> * man/gnus.texi (Maildir): Clarify expire-age and expire-group.
-rw-r--r--lisp/gnus/ChangeLog5
-rw-r--r--lisp/gnus/nnrss.el13
-rw-r--r--man/ChangeLog23
-rw-r--r--man/gnus.texi107
4 files changed, 107 insertions, 41 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 23e5564770f..abbfb096ab1 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -21,6 +21,11 @@
21 * pgg-def.el (top-level): Don't require custom, it is 21 * pgg-def.el (top-level): Don't require custom, it is
22 autoloaded. (To sync with No Gnus.) 22 autoloaded. (To sync with No Gnus.)
23 23
242005-10-04 David Hansen <david.hansen@gmx.net>
25
26 * nnrss.el (nnrss-request-article): Add support for the comments tag.
27 (nnrss-check-group): Ditto.
28
242005-10-04 Reiner Steib <Reiner.Steib@gmx.de> 292005-10-04 Reiner Steib <Reiner.Steib@gmx.de>
25 30
26 * mm-url.el (mm-url-predefined-programs): Add switches for curl. 31 * mm-url.el (mm-url-predefined-programs): Add switches for curl.
diff --git a/lisp/gnus/nnrss.el b/lisp/gnus/nnrss.el
index 5018701ee42..adef035c830 100644
--- a/lisp/gnus/nnrss.el
+++ b/lisp/gnus/nnrss.el
@@ -197,6 +197,7 @@ for decoding when the cdr that the data specify is not available.")
197 " "))) 197 " ")))
198 (link (nth 2 e)) 198 (link (nth 2 e))
199 (enclosure (nth 7 e)) 199 (enclosure (nth 7 e))
200 (comments (nth 8 e))
200 ;; Enable encoding of Newsgroups header in XEmacs. 201 ;; Enable encoding of Newsgroups header in XEmacs.
201 (default-enable-multibyte-characters t) 202 (default-enable-multibyte-characters t)
202 (rfc2047-header-encoding-alist 203 (rfc2047-header-encoding-alist
@@ -205,7 +206,7 @@ for decoding when the cdr that the data specify is not available.")
205 rfc2047-header-encoding-alist) 206 rfc2047-header-encoding-alist)
206 rfc2047-header-encoding-alist)) 207 rfc2047-header-encoding-alist))
207 rfc2047-encode-encoded-words body) 208 rfc2047-encode-encoded-words body)
208 (when (or text link enclosure) 209 (when (or text link enclosure comments)
209 (insert "\n") 210 (insert "\n")
210 (insert "<#multipart type=alternative>\n" 211 (insert "<#multipart type=alternative>\n"
211 "<#part type=\"text/plain\">\n") 212 "<#part type=\"text/plain\">\n")
@@ -220,6 +221,8 @@ for decoding when the cdr that the data specify is not available.")
220 (insert (car enclosure) " " 221 (insert (car enclosure) " "
221 (nth 2 enclosure) " " 222 (nth 2 enclosure) " "
222 (nth 3 enclosure) "\n")) 223 (nth 3 enclosure) "\n"))
224 (when comments
225 (insert comments "\n"))
223 (setq body (buffer-substring body (point))) 226 (setq body (buffer-substring body (point)))
224 (insert "<#/part>\n" 227 (insert "<#/part>\n"
225 "<#part type=\"text/html\">\n" 228 "<#part type=\"text/html\">\n"
@@ -232,6 +235,8 @@ for decoding when the cdr that the data specify is not available.")
232 (insert "<p><a href=\"" (car enclosure) "\">" 235 (insert "<p><a href=\"" (car enclosure) "\">"
233 (cadr enclosure) "</a> " (nth 2 enclosure) 236 (cadr enclosure) "</a> " (nth 2 enclosure)
234 " " (nth 3 enclosure) "</p>\n")) 237 " " (nth 3 enclosure) "</p>\n"))
238 (when comments
239 (insert "<p><a href=\"" comments "\">comments</a></p>\n"))
235 (insert "</body></html>\n" 240 (insert "</body></html>\n"
236 "<#/part>\n" 241 "<#/part>\n"
237 "<#/multipart>\n")) 242 "<#/multipart>\n"))
@@ -528,7 +533,7 @@ nnrss: %s: Not valid XML %s and w3-parse doesn't work %s"
528 533
529(defun nnrss-check-group (group server) 534(defun nnrss-check-group (group server)
530 (let (file xml subject url extra changed author date 535 (let (file xml subject url extra changed author date
531 enclosure rss-ns rdf-ns content-ns dc-ns) 536 enclosure comments rss-ns rdf-ns content-ns dc-ns)
532 (if (and nnrss-use-local 537 (if (and nnrss-use-local
533 (file-exists-p (setq file (expand-file-name 538 (file-exists-p (setq file (expand-file-name
534 (nnrss-translate-file-chars 539 (nnrss-translate-file-chars
@@ -576,6 +581,7 @@ nnrss: %s: Not valid XML %s and w3-parse doesn't work %s"
576 (setq date (or (nnrss-node-text dc-ns 'date item) 581 (setq date (or (nnrss-node-text dc-ns 'date item)
577 (nnrss-node-text rss-ns 'pubDate item) 582 (nnrss-node-text rss-ns 'pubDate item)
578 (message-make-date))) 583 (message-make-date)))
584 (setq comments (nnrss-node-text rss-ns 'comments item))
579 (when (setq enclosure (cadr (assq (intern (concat rss-ns "enclosure")) item))) 585 (when (setq enclosure (cadr (assq (intern (concat rss-ns "enclosure")) item)))
580 (let ((url (cdr (assq 'url enclosure))) 586 (let ((url (cdr (assq 'url enclosure)))
581 (len (cdr (assq 'length enclosure))) 587 (len (cdr (assq 'length enclosure)))
@@ -606,7 +612,8 @@ nnrss: %s: Not valid XML %s and w3-parse doesn't work %s"
606 (and author (nnrss-mime-encode-string author)) 612 (and author (nnrss-mime-encode-string author))
607 date 613 date
608 (and extra (nnrss-decode-entities-string extra)) 614 (and extra (nnrss-decode-entities-string extra))
609 enclosure) 615 enclosure
616 comments)
610 nnrss-group-data) 617 nnrss-group-data)
611 (gnus-sethash (or url extra) t nnrss-group-hashtb) 618 (gnus-sethash (or url extra) t nnrss-group-hashtb)
612 (setq changed t)) 619 (setq changed t))
diff --git a/man/ChangeLog b/man/ChangeLog
index 8ba536739fc..3b98e7985fb 100644
--- a/man/ChangeLog
+++ b/man/ChangeLog
@@ -1,3 +1,26 @@
12005-10-14 Katsumi Yamaoka <yamaoka@jpl.org>
2
3 * gnus.texi (Document Server Internals): Addition.
4
52005-10-13 Katsumi Yamaoka <yamaoka@jpl.org>
6
7 * gnus.texi (A note on namespaces): Fix RFC reference.
8
92005-10-12 Katsumi Yamaoka <yamaoka@jpl.org>
10
11 * gnus.texi (RSS): Fix key description.
12
132005-10-11 Katsumi Yamaoka <yamaoka@jpl.org>
14
15 * gnus.texi: Emacs/w3 -> Emacs/W3.
16 (Browsing the Web): Fix description.
17 (Web Searches): Ditto.
18 (Customizing W3): Ditto.
19
202005-10-07 Katsumi Yamaoka <yamaoka@jpl.org>
21
22 * gnus.texi (Maildir): Clarify expire-age and expire-group.
23
12005-10-13 Kenichi Handa <handa@m17n.org> 242005-10-13 Kenichi Handa <handa@m17n.org>
2 25
3 * basic.texi (Position Info): Fix previous change. 26 * basic.texi (Position Info): Fix previous change.
diff --git a/man/gnus.texi b/man/gnus.texi
index 7ced947a5ce..1a66bd763e0 100644
--- a/man/gnus.texi
+++ b/man/gnus.texi
@@ -683,7 +683,7 @@ Browsing the Web
683* Ultimate:: The Ultimate Bulletin Board systems. 683* Ultimate:: The Ultimate Bulletin Board systems.
684* Web Archive:: Reading mailing list archived on web. 684* Web Archive:: Reading mailing list archived on web.
685* RSS:: Reading RDF site summary. 685* RSS:: Reading RDF site summary.
686* Customizing w3:: Doing stuff to Emacs/w3 from Gnus. 686* Customizing W3:: Doing stuff to Emacs/W3 from Gnus.
687 687
688@acronym{IMAP} 688@acronym{IMAP}
689 689
@@ -8569,8 +8569,8 @@ Customization, emacs-mime, The Emacs MIME Manual}) to convert the
8569can use include: 8569can use include:
8570 8570
8571@table @code 8571@table @code
8572@item w3 8572@item W3
8573Use Emacs/w3. 8573Use Emacs/W3.
8574 8574
8575@item w3m 8575@item w3m
8576Use @uref{http://emacs-w3m.namazu.org/, emacs-w3m}. 8576Use @uref{http://emacs-w3m.namazu.org/, emacs-w3m}.
@@ -15093,8 +15093,9 @@ An integer specifying the minimum age, in seconds, of an article
15093before it will be expired, or the symbol @code{never} to specify that 15093before it will be expired, or the symbol @code{never} to specify that
15094articles should never be expired. If this parameter is not set, 15094articles should never be expired. If this parameter is not set,
15095@code{nnmaildir} falls back to the usual 15095@code{nnmaildir} falls back to the usual
15096@code{nnmail-expiry-wait}(@code{-function}) variables (overrideable by 15096@code{nnmail-expiry-wait}(@code{-function}) variables (the
15097the @code{expiry-wait}(@code{-function}) group parameters. If you 15097@code{expiry-wait} group parameter overrides @code{nnmail-expiry-wait}
15098and makes @code{nnmail-expiry-wait-function} ineffective). If you
15098wanted a value of 3 days, you could use something like @code{[(* 3 24 15099wanted a value of 3 days, you could use something like @code{[(* 3 24
1509960 60)]}; @code{nnmaildir} will evaluate the form and use the result. 1510060 60)]}; @code{nnmaildir} will evaluate the form and use the result.
15100An article's age is measured starting from the article file's 15101An article's age is measured starting from the article file's
@@ -15117,8 +15118,8 @@ the parameter belongs to, then the article is not expired at all. If
15117you use the vector form, the first element is evaluated once for each 15118you use the vector form, the first element is evaluated once for each
15118article. So that form can refer to 15119article. So that form can refer to
15119@code{nnmaildir-article-file-name}, etc., to decide where to put the 15120@code{nnmaildir-article-file-name}, etc., to decide where to put the
15120article. @emph{If this parameter is not set, @code{nnmaildir} does 15121article. @emph{Even if this parameter is not set, @code{nnmaildir}
15121not fall back to the @code{expiry-target} group parameter or the 15122does not fall back to the @code{expiry-target} group parameter or the
15122@code{nnmail-expiry-target} variable.} 15123@code{nnmail-expiry-target} variable.}
15123 15124
15124@item read-only 15125@item read-only
@@ -15534,10 +15535,11 @@ interfaces to these sources.
15534* Ultimate:: The Ultimate Bulletin Board systems. 15535* Ultimate:: The Ultimate Bulletin Board systems.
15535* Web Archive:: Reading mailing list archived on web. 15536* Web Archive:: Reading mailing list archived on web.
15536* RSS:: Reading RDF site summary. 15537* RSS:: Reading RDF site summary.
15537* Customizing w3:: Doing stuff to Emacs/w3 from Gnus. 15538* Customizing W3:: Doing stuff to Emacs/W3 from Gnus.
15538@end menu 15539@end menu
15539 15540
15540All the web sources require Emacs/w3 and the url library to work. 15541All the web sources require Emacs/W3 and the url library or those
15542alternatives to work.
15541 15543
15542The main caveat with all these web sources is that they probably won't 15544The main caveat with all these web sources is that they probably won't
15543work for a very long time. Gleaning information from the @acronym{HTML} data 15545work for a very long time. Gleaning information from the @acronym{HTML} data
@@ -15624,8 +15626,9 @@ make money off of advertisements, not to provide services to the
15624community. Since @code{nnweb} washes the ads off all the articles, one 15626community. Since @code{nnweb} washes the ads off all the articles, one
15625might think that the providers might be somewhat miffed. We'll see. 15627might think that the providers might be somewhat miffed. We'll see.
15626 15628
15627You must have the @code{url} and @code{w3} package installed to be able 15629You must have the @code{url} and @code{W3} package or those alternatives
15628to use @code{nnweb}. 15630(try @code{customize-group} on the @samp{mm-url} variable group)
15631installed to be able to use @code{nnweb}.
15629 15632
15630Virtual server variables: 15633Virtual server variables:
15631 15634
@@ -15845,9 +15848,9 @@ system because @acronym{RSS} uses UTF-8 for encoding non-@acronym{ASCII}
15845text by default. It is also used by default for non-@acronym{ASCII} 15848text by default. It is also used by default for non-@acronym{ASCII}
15846group names. 15849group names.
15847 15850
15848@kindex G R (Summary) 15851@kindex G R (Group)
15849Use @kbd{G R} from the summary buffer to subscribe to a feed---you will 15852Use @kbd{G R} from the group buffer to subscribe to a feed---you will be
15850be prompted for the location, the title and the description of the feed. 15853prompted for the location, the title and the description of the feed.
15851The title, which allows any characters, will be used for the group name 15854The title, which allows any characters, will be used for the group name
15852and the name of the group data file. The description can be omitted. 15855and the name of the group data file. The description can be omitted.
15853 15856
@@ -15940,18 +15943,19 @@ summary buffer.
15940(add-to-list 'nnmail-extra-headers nnrss-url-field) 15943(add-to-list 'nnmail-extra-headers nnrss-url-field)
15941@end lisp 15944@end lisp
15942 15945
15943@node Customizing w3 15946@node Customizing W3
15944@subsection Customizing w3 15947@subsection Customizing W3
15945@cindex w3 15948@cindex W3
15946@cindex html 15949@cindex html
15947@cindex url 15950@cindex url
15948@cindex Netscape 15951@cindex Netscape
15949 15952
15950Gnus uses the url library to fetch web pages and Emacs/w3 to display web 15953Gnus uses the url library to fetch web pages and Emacs/W3 (or those
15951pages. Emacs/w3 is documented in its own manual, but there are some 15954alternatives) to display web pages. Emacs/W3 is documented in its own
15952things that may be more relevant for Gnus users. 15955manual, but there are some things that may be more relevant for Gnus
15956users.
15953 15957
15954For instance, a common question is how to make Emacs/w3 follow links 15958For instance, a common question is how to make Emacs/W3 follow links
15955using the @code{browse-url} functions (which will call some external web 15959using the @code{browse-url} functions (which will call some external web
15956browser like Netscape). Here's one way: 15960browser like Netscape). Here's one way:
15957 15961
@@ -15966,7 +15970,7 @@ browser like Netscape). Here's one way:
15966 (w3-fetch-orig url target))))) 15970 (w3-fetch-orig url target)))))
15967@end lisp 15971@end lisp
15968 15972
15969Put that in your @file{.emacs} file, and hitting links in w3-rendered 15973Put that in your @file{.emacs} file, and hitting links in W3-rendered
15970@acronym{HTML} in the Gnus article buffers will use @code{browse-url} to 15974@acronym{HTML} in the Gnus article buffers will use @code{browse-url} to
15971follow the link. 15975follow the link.
15972 15976
@@ -16559,7 +16563,7 @@ delete them.
16559@cindex namespaces 16563@cindex namespaces
16560 16564
16561The @acronym{IMAP} protocol has a concept called namespaces, described 16565The @acronym{IMAP} protocol has a concept called namespaces, described
16562by the following text in the RFC: 16566by the following text in the RFC2060:
16563 16567
16564@display 16568@display
165655.1.2. Mailbox Namespace Naming Convention 165695.1.2. Mailbox Namespace Naming Convention
@@ -16891,34 +16895,48 @@ totally ignored.
16891 16895
16892@item article-begin 16896@item article-begin
16893This setting has to be present in all document type definitions. It 16897This setting has to be present in all document type definitions. It
16894says what the beginning of each article looks like. 16898says what the beginning of each article looks like. To do more
16899complicated things that cannot be dealt with a simple regexp, you can
16900use @code{article-begin-function} instead of this.
16895 16901
16896@item head-begin-function 16902@item article-begin-function
16897If present, this should be a function that moves point to the head of 16903If present, this should be a function that moves point to the beginning
16898the article. 16904of each article. This setting overrides @code{article-begin}.
16899 16905
16900@item nndoc-head-begin 16906@item head-begin
16901If present, this should be a regexp that matches the head of the 16907If present, this should be a regexp that matches the head of the
16902article. 16908article. To do more complicated things that cannot be dealt with a
16909simple regexp, you can use @code{head-begin-function} instead of this.
16903 16910
16904@item nndoc-head-end 16911@item head-begin-function
16912If present, this should be a function that moves point to the head of
16913the article. This setting overrides @code{head-begin}.
16914
16915@item head-end
16905This should match the end of the head of the article. It defaults to 16916This should match the end of the head of the article. It defaults to
16906@samp{^$}---the empty line. 16917@samp{^$}---the empty line.
16907 16918
16919@item body-begin
16920This should match the beginning of the body of the article. It defaults
16921to @samp{^\n}. To do more complicated things that cannot be dealt with
16922a simple regexp, you can use @code{body-begin-function} instead of this.
16923
16908@item body-begin-function 16924@item body-begin-function
16909If present, this function should move point to the beginning of the body 16925If present, this function should move point to the beginning of the body
16910of the article. 16926of the article. This setting overrides @code{body-begin}.
16911 16927
16912@item body-begin 16928@item body-end
16913This should match the beginning of the body of the article. It defaults 16929If present, this should match the end of the body of the article. To do
16914to @samp{^\n}. 16930more complicated things that cannot be dealt with a simple regexp, you
16931can use @code{body-end-function} instead of this.
16915 16932
16916@item body-end-function 16933@item body-end-function
16917If present, this function should move point to the end of the body of 16934If present, this function should move point to the end of the body of
16918the article. 16935the article. This setting overrides @code{body-end}.
16919 16936
16920@item body-end 16937@item file-begin
16921If present, this should match the end of the body of the article. 16938If present, this should match the beginning of the file. All text
16939before this regexp will be totally ignored.
16922 16940
16923@item file-end 16941@item file-end
16924If present, this should match the end of the file. All text after this 16942If present, this should match the end of the file. All text after this
@@ -16949,6 +16967,19 @@ understand. It is called with the article number as a parameter, and is
16949expected to generate a nice head for the article in question. It is 16967expected to generate a nice head for the article in question. It is
16950called when requesting the headers of all articles. 16968called when requesting the headers of all articles.
16951 16969
16970@item generate-article-function
16971If present, this function is called to generate an entire article that
16972Gnus can understand. It is called with the article number as a
16973parameter when requesting all articles.
16974
16975@item dissection-function
16976If present, this function is called to dissect a document by itself,
16977overriding @code{first-article}, @code{article-begin},
16978@code{article-begin-function}, @code{head-begin},
16979@code{head-begin-function}, @code{head-end}, @code{body-begin},
16980@code{body-begin-function}, @code{body-end}, @code{body-end-function},
16981@code{file-begin}, and @code{file-end}.
16982
16952@end table 16983@end table
16953 16984
16954Let's look at the most complicated example I can come up with---standard 16985Let's look at the most complicated example I can come up with---standard
@@ -24388,7 +24419,7 @@ XEmacs is distributed as a collection of packages. You should install
24388whatever packages the Gnus XEmacs package requires. The current 24419whatever packages the Gnus XEmacs package requires. The current
24389requirements are @samp{gnus}, @samp{mail-lib}, @samp{xemacs-base}, 24420requirements are @samp{gnus}, @samp{mail-lib}, @samp{xemacs-base},
24390@samp{eterm}, @samp{sh-script}, @samp{net-utils}, @samp{os-utils}, 24421@samp{eterm}, @samp{sh-script}, @samp{net-utils}, @samp{os-utils},
24391@samp{dired}, @samp{mh-e}, @samp{sieve}, @samp{ps-print}, @samp{w3}, 24422@samp{dired}, @samp{mh-e}, @samp{sieve}, @samp{ps-print}, @samp{W3},
24392@samp{pgg}, @samp{mailcrypt}, @samp{ecrypto}, and @samp{sasl}. 24423@samp{pgg}, @samp{mailcrypt}, @samp{ecrypto}, and @samp{sasl}.
24393 24424
24394 24425