Commit d3a597b7 authored by Miles Bader's avatar Miles Bader
Browse files

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.
parent 03ab074b
...@@ -21,6 +21,11 @@ ...@@ -21,6 +21,11 @@
* pgg-def.el (top-level): Don't require custom, it is * pgg-def.el (top-level): Don't require custom, it is
autoloaded. (To sync with No Gnus.) autoloaded. (To sync with No Gnus.)
2005-10-04 David Hansen <david.hansen@gmx.net>
* nnrss.el (nnrss-request-article): Add support for the comments tag.
(nnrss-check-group): Ditto.
2005-10-04 Reiner Steib <Reiner.Steib@gmx.de> 2005-10-04 Reiner Steib <Reiner.Steib@gmx.de>
* mm-url.el (mm-url-predefined-programs): Add switches for curl. * mm-url.el (mm-url-predefined-programs): Add switches for curl.
......
...@@ -197,6 +197,7 @@ for decoding when the cdr that the data specify is not available.") ...@@ -197,6 +197,7 @@ for decoding when the cdr that the data specify is not available.")
" "))) " ")))
(link (nth 2 e)) (link (nth 2 e))
(enclosure (nth 7 e)) (enclosure (nth 7 e))
(comments (nth 8 e))
;; Enable encoding of Newsgroups header in XEmacs. ;; Enable encoding of Newsgroups header in XEmacs.
(default-enable-multibyte-characters t) (default-enable-multibyte-characters t)
(rfc2047-header-encoding-alist (rfc2047-header-encoding-alist
...@@ -205,7 +206,7 @@ for decoding when the cdr that the data specify is not available.") ...@@ -205,7 +206,7 @@ for decoding when the cdr that the data specify is not available.")
rfc2047-header-encoding-alist) rfc2047-header-encoding-alist)
rfc2047-header-encoding-alist)) rfc2047-header-encoding-alist))
rfc2047-encode-encoded-words body) rfc2047-encode-encoded-words body)
(when (or text link enclosure) (when (or text link enclosure comments)
(insert "\n") (insert "\n")
(insert "<#multipart type=alternative>\n" (insert "<#multipart type=alternative>\n"
"<#part type=\"text/plain\">\n") "<#part type=\"text/plain\">\n")
...@@ -220,6 +221,8 @@ for decoding when the cdr that the data specify is not available.") ...@@ -220,6 +221,8 @@ for decoding when the cdr that the data specify is not available.")
(insert (car enclosure) " " (insert (car enclosure) " "
(nth 2 enclosure) " " (nth 2 enclosure) " "
(nth 3 enclosure) "\n")) (nth 3 enclosure) "\n"))
(when comments
(insert comments "\n"))
(setq body (buffer-substring body (point))) (setq body (buffer-substring body (point)))
(insert "<#/part>\n" (insert "<#/part>\n"
"<#part type=\"text/html\">\n" "<#part type=\"text/html\">\n"
...@@ -232,6 +235,8 @@ for decoding when the cdr that the data specify is not available.") ...@@ -232,6 +235,8 @@ for decoding when the cdr that the data specify is not available.")
(insert "<p><a href=\"" (car enclosure) "\">" (insert "<p><a href=\"" (car enclosure) "\">"
(cadr enclosure) "</a> " (nth 2 enclosure) (cadr enclosure) "</a> " (nth 2 enclosure)
" " (nth 3 enclosure) "</p>\n")) " " (nth 3 enclosure) "</p>\n"))
(when comments
(insert "<p><a href=\"" comments "\">comments</a></p>\n"))
(insert "</body></html>\n" (insert "</body></html>\n"
"<#/part>\n" "<#/part>\n"
"<#/multipart>\n")) "<#/multipart>\n"))
...@@ -528,7 +533,7 @@ nnrss: %s: Not valid XML %s and w3-parse doesn't work %s" ...@@ -528,7 +533,7 @@ nnrss: %s: Not valid XML %s and w3-parse doesn't work %s"
(defun nnrss-check-group (group server) (defun nnrss-check-group (group server)
(let (file xml subject url extra changed author date (let (file xml subject url extra changed author date
enclosure rss-ns rdf-ns content-ns dc-ns) enclosure comments rss-ns rdf-ns content-ns dc-ns)
(if (and nnrss-use-local (if (and nnrss-use-local
(file-exists-p (setq file (expand-file-name (file-exists-p (setq file (expand-file-name
(nnrss-translate-file-chars (nnrss-translate-file-chars
...@@ -576,6 +581,7 @@ nnrss: %s: Not valid XML %s and w3-parse doesn't work %s" ...@@ -576,6 +581,7 @@ nnrss: %s: Not valid XML %s and w3-parse doesn't work %s"
(setq date (or (nnrss-node-text dc-ns 'date item) (setq date (or (nnrss-node-text dc-ns 'date item)
(nnrss-node-text rss-ns 'pubDate item) (nnrss-node-text rss-ns 'pubDate item)
(message-make-date))) (message-make-date)))
(setq comments (nnrss-node-text rss-ns 'comments item))
(when (setq enclosure (cadr (assq (intern (concat rss-ns "enclosure")) item))) (when (setq enclosure (cadr (assq (intern (concat rss-ns "enclosure")) item)))
(let ((url (cdr (assq 'url enclosure))) (let ((url (cdr (assq 'url enclosure)))
(len (cdr (assq 'length enclosure))) (len (cdr (assq 'length enclosure)))
...@@ -606,7 +612,8 @@ nnrss: %s: Not valid XML %s and w3-parse doesn't work %s" ...@@ -606,7 +612,8 @@ nnrss: %s: Not valid XML %s and w3-parse doesn't work %s"
(and author (nnrss-mime-encode-string author)) (and author (nnrss-mime-encode-string author))
date date
(and extra (nnrss-decode-entities-string extra)) (and extra (nnrss-decode-entities-string extra))
enclosure) enclosure
comments)
nnrss-group-data) nnrss-group-data)
(gnus-sethash (or url extra) t nnrss-group-hashtb) (gnus-sethash (or url extra) t nnrss-group-hashtb)
(setq changed t)) (setq changed t))
......
2005-10-14 Katsumi Yamaoka <yamaoka@jpl.org>
* gnus.texi (Document Server Internals): Addition.
2005-10-13 Katsumi Yamaoka <yamaoka@jpl.org>
* gnus.texi (A note on namespaces): Fix RFC reference.
2005-10-12 Katsumi Yamaoka <yamaoka@jpl.org>
* gnus.texi (RSS): Fix key description.
2005-10-11 Katsumi Yamaoka <yamaoka@jpl.org>
* 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>
* gnus.texi (Maildir): Clarify expire-age and expire-group.
2005-10-13 Kenichi Handa <handa@m17n.org> 2005-10-13 Kenichi Handa <handa@m17n.org>
* basic.texi (Position Info): Fix previous change. * basic.texi (Position Info): Fix previous change.
......
...@@ -683,7 +683,7 @@ Browsing the Web ...@@ -683,7 +683,7 @@ Browsing the Web
* Ultimate:: The Ultimate Bulletin Board systems. * Ultimate:: The Ultimate Bulletin Board systems.
* Web Archive:: Reading mailing list archived on web. * Web Archive:: Reading mailing list archived on web.
* RSS:: Reading RDF site summary. * RSS:: Reading RDF site summary.
* Customizing w3:: Doing stuff to Emacs/w3 from Gnus. * Customizing W3:: Doing stuff to Emacs/W3 from Gnus.
   
@acronym{IMAP} @acronym{IMAP}
   
...@@ -8569,8 +8569,8 @@ Customization, emacs-mime, The Emacs MIME Manual}) to convert the ...@@ -8569,8 +8569,8 @@ Customization, emacs-mime, The Emacs MIME Manual}) to convert the
can use include: can use include:
   
@table @code @table @code
@item w3 @item W3
Use Emacs/w3. Use Emacs/W3.
   
@item w3m @item w3m
Use @uref{http://emacs-w3m.namazu.org/, emacs-w3m}. Use @uref{http://emacs-w3m.namazu.org/, emacs-w3m}.
...@@ -15093,8 +15093,9 @@ An integer specifying the minimum age, in seconds, of an article ...@@ -15093,8 +15093,9 @@ An integer specifying the minimum age, in seconds, of an article
before it will be expired, or the symbol @code{never} to specify that before it will be expired, or the symbol @code{never} to specify that
articles should never be expired. If this parameter is not set, articles should never be expired. If this parameter is not set,
@code{nnmaildir} falls back to the usual @code{nnmaildir} falls back to the usual
@code{nnmail-expiry-wait}(@code{-function}) variables (overrideable by @code{nnmail-expiry-wait}(@code{-function}) variables (the
the @code{expiry-wait}(@code{-function}) group parameters. If you @code{expiry-wait} group parameter overrides @code{nnmail-expiry-wait}
and makes @code{nnmail-expiry-wait-function} ineffective). If you
wanted a value of 3 days, you could use something like @code{[(* 3 24 wanted a value of 3 days, you could use something like @code{[(* 3 24
60 60)]}; @code{nnmaildir} will evaluate the form and use the result. 60 60)]}; @code{nnmaildir} will evaluate the form and use the result.
An article's age is measured starting from the article file's An 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 ...@@ -15117,8 +15118,8 @@ the parameter belongs to, then the article is not expired at all. If
you use the vector form, the first element is evaluated once for each you use the vector form, the first element is evaluated once for each
article. So that form can refer to article. So that form can refer to
@code{nnmaildir-article-file-name}, etc., to decide where to put the @code{nnmaildir-article-file-name}, etc., to decide where to put the
article. @emph{If this parameter is not set, @code{nnmaildir} does article. @emph{Even if this parameter is not set, @code{nnmaildir}
not fall back to the @code{expiry-target} group parameter or the does not fall back to the @code{expiry-target} group parameter or the
@code{nnmail-expiry-target} variable.} @code{nnmail-expiry-target} variable.}
   
@item read-only @item read-only
...@@ -15534,10 +15535,11 @@ interfaces to these sources. ...@@ -15534,10 +15535,11 @@ interfaces to these sources.
* Ultimate:: The Ultimate Bulletin Board systems. * Ultimate:: The Ultimate Bulletin Board systems.
* Web Archive:: Reading mailing list archived on web. * Web Archive:: Reading mailing list archived on web.
* RSS:: Reading RDF site summary. * RSS:: Reading RDF site summary.
* Customizing w3:: Doing stuff to Emacs/w3 from Gnus. * Customizing W3:: Doing stuff to Emacs/W3 from Gnus.
@end menu @end menu
   
All the web sources require Emacs/w3 and the url library to work. All the web sources require Emacs/W3 and the url library or those
alternatives to work.
   
The main caveat with all these web sources is that they probably won't The main caveat with all these web sources is that they probably won't
work for a very long time. Gleaning information from the @acronym{HTML} data work 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 ...@@ -15624,8 +15626,9 @@ make money off of advertisements, not to provide services to the
community. Since @code{nnweb} washes the ads off all the articles, one community. Since @code{nnweb} washes the ads off all the articles, one
might think that the providers might be somewhat miffed. We'll see. might think that the providers might be somewhat miffed. We'll see.
   
You must have the @code{url} and @code{w3} package installed to be able You must have the @code{url} and @code{W3} package or those alternatives
to use @code{nnweb}. (try @code{customize-group} on the @samp{mm-url} variable group)
installed to be able to use @code{nnweb}.
   
Virtual server variables: Virtual server variables:
   
...@@ -15845,9 +15848,9 @@ system because @acronym{RSS} uses UTF-8 for encoding non-@acronym{ASCII} ...@@ -15845,9 +15848,9 @@ system because @acronym{RSS} uses UTF-8 for encoding non-@acronym{ASCII}
text by default. It is also used by default for non-@acronym{ASCII} text by default. It is also used by default for non-@acronym{ASCII}
group names. group names.
   
@kindex G R (Summary) @kindex G R (Group)
Use @kbd{G R} from the summary buffer to subscribe to a feed---you will Use @kbd{G R} from the group buffer to subscribe to a feed---you will be
be prompted for the location, the title and the description of the feed. prompted for the location, the title and the description of the feed.
The title, which allows any characters, will be used for the group name The title, which allows any characters, will be used for the group name
and the name of the group data file. The description can be omitted. and the name of the group data file. The description can be omitted.
   
...@@ -15940,18 +15943,19 @@ summary buffer. ...@@ -15940,18 +15943,19 @@ summary buffer.
(add-to-list 'nnmail-extra-headers nnrss-url-field) (add-to-list 'nnmail-extra-headers nnrss-url-field)
@end lisp @end lisp
   
@node Customizing w3 @node Customizing W3
@subsection Customizing w3 @subsection Customizing W3
@cindex w3 @cindex W3
@cindex html @cindex html
@cindex url @cindex url
@cindex Netscape @cindex Netscape
   
Gnus uses the url library to fetch web pages and Emacs/w3 to display web Gnus uses the url library to fetch web pages and Emacs/W3 (or those
pages. Emacs/w3 is documented in its own manual, but there are some alternatives) to display web pages. Emacs/W3 is documented in its own
things that may be more relevant for Gnus users. manual, but there are some things that may be more relevant for Gnus
users.
   
For instance, a common question is how to make Emacs/w3 follow links For instance, a common question is how to make Emacs/W3 follow links
using the @code{browse-url} functions (which will call some external web using the @code{browse-url} functions (which will call some external web
browser like Netscape). Here's one way: browser like Netscape). Here's one way:
   
...@@ -15966,7 +15970,7 @@ browser like Netscape). Here's one way: ...@@ -15966,7 +15970,7 @@ browser like Netscape). Here's one way:
(w3-fetch-orig url target))))) (w3-fetch-orig url target)))))
@end lisp @end lisp
   
Put that in your @file{.emacs} file, and hitting links in w3-rendered Put that in your @file{.emacs} file, and hitting links in W3-rendered
@acronym{HTML} in the Gnus article buffers will use @code{browse-url} to @acronym{HTML} in the Gnus article buffers will use @code{browse-url} to
follow the link. follow the link.
   
...@@ -16559,7 +16563,7 @@ delete them. ...@@ -16559,7 +16563,7 @@ delete them.
@cindex namespaces @cindex namespaces
   
The @acronym{IMAP} protocol has a concept called namespaces, described The @acronym{IMAP} protocol has a concept called namespaces, described
by the following text in the RFC: by the following text in the RFC2060:
   
@display @display
5.1.2. Mailbox Namespace Naming Convention 5.1.2. Mailbox Namespace Naming Convention
...@@ -16891,34 +16895,48 @@ totally ignored. ...@@ -16891,34 +16895,48 @@ totally ignored.
   
@item article-begin @item article-begin
This setting has to be present in all document type definitions. It This setting has to be present in all document type definitions. It
says what the beginning of each article looks like. says what the beginning of each article looks like. To do more
complicated things that cannot be dealt with a simple regexp, you can
use @code{article-begin-function} instead of this.
   
@item head-begin-function @item article-begin-function
If present, this should be a function that moves point to the head of If present, this should be a function that moves point to the beginning
the article. of each article. This setting overrides @code{article-begin}.
   
@item nndoc-head-begin @item head-begin
If present, this should be a regexp that matches the head of the If present, this should be a regexp that matches the head of the
article. article. To do more complicated things that cannot be dealt with a
simple regexp, you can use @code{head-begin-function} instead of this.
   
@item nndoc-head-end @item head-begin-function
If present, this should be a function that moves point to the head of
the article. This setting overrides @code{head-begin}.
@item head-end
This should match the end of the head of the article. It defaults to This should match the end of the head of the article. It defaults to
@samp{^$}---the empty line. @samp{^$}---the empty line.
   
@item body-begin
This should match the beginning of the body of the article. It defaults
to @samp{^\n}. To do more complicated things that cannot be dealt with
a simple regexp, you can use @code{body-begin-function} instead of this.
@item body-begin-function @item body-begin-function
If present, this function should move point to the beginning of the body If present, this function should move point to the beginning of the body
of the article. of the article. This setting overrides @code{body-begin}.
   
@item body-begin @item body-end
This should match the beginning of the body of the article. It defaults If present, this should match the end of the body of the article. To do
to @samp{^\n}. more complicated things that cannot be dealt with a simple regexp, you
can use @code{body-end-function} instead of this.
   
@item body-end-function @item body-end-function
If present, this function should move point to the end of the body of If present, this function should move point to the end of the body of
the article. the article. This setting overrides @code{body-end}.
   
@item body-end @item file-begin
If present, this should match the end of the body of the article. If present, this should match the beginning of the file. All text
before this regexp will be totally ignored.
   
@item file-end @item file-end
If present, this should match the end of the file. All text after this If 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 ...@@ -16949,6 +16967,19 @@ understand. It is called with the article number as a parameter, and is
expected to generate a nice head for the article in question. It is expected to generate a nice head for the article in question. It is
called when requesting the headers of all articles. called when requesting the headers of all articles.
   
@item generate-article-function
If present, this function is called to generate an entire article that
Gnus can understand. It is called with the article number as a
parameter when requesting all articles.
@item dissection-function
If present, this function is called to dissect a document by itself,
overriding @code{first-article}, @code{article-begin},
@code{article-begin-function}, @code{head-begin},
@code{head-begin-function}, @code{head-end}, @code{body-begin},
@code{body-begin-function}, @code{body-end}, @code{body-end-function},
@code{file-begin}, and @code{file-end}.
@end table @end table
   
Let's look at the most complicated example I can come up with---standard Let'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 ...@@ -24388,7 +24419,7 @@ XEmacs is distributed as a collection of packages. You should install
whatever packages the Gnus XEmacs package requires. The current whatever packages the Gnus XEmacs package requires. The current
requirements are @samp{gnus}, @samp{mail-lib}, @samp{xemacs-base}, requirements are @samp{gnus}, @samp{mail-lib}, @samp{xemacs-base},
@samp{eterm}, @samp{sh-script}, @samp{net-utils}, @samp{os-utils}, @samp{eterm}, @samp{sh-script}, @samp{net-utils}, @samp{os-utils},
@samp{dired}, @samp{mh-e}, @samp{sieve}, @samp{ps-print}, @samp{w3}, @samp{dired}, @samp{mh-e}, @samp{sieve}, @samp{ps-print}, @samp{W3},
@samp{pgg}, @samp{mailcrypt}, @samp{ecrypto}, and @samp{sasl}. @samp{pgg}, @samp{mailcrypt}, @samp{ecrypto}, and @samp{sasl}.
   
   
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment