Function: gnus-group-make-rss-group

gnus-group-make-rss-group is an interactive and byte-compiled function defined in gnus-group.el.gz.

Signature

(gnus-group-make-rss-group &optional URL)

Documentation

Given a URL, discover if there is an RSS feed.

If there is, use Gnus to create an nnrss group

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/gnus-group.el.gz
(defun gnus-group-make-rss-group (&optional url)
  "Given a URL, discover if there is an RSS feed.
If there is, use Gnus to create an nnrss group"
  (interactive nil gnus-group-mode)
  (require 'nnrss)
  (if (not url)
      (setq url (read-from-minibuffer "URL to Search for RSS: ")))
  (let ((feedinfo (nnrss-discover-feed url)))
    (if feedinfo
	(let* ((title (gnus-newsgroup-savable-name
		       (read-from-minibuffer "Title: "
					     (gnus-newsgroup-savable-name
					      (mapconcat
					       #'identity
					       (split-string
						(or (cdr (assoc 'title
								feedinfo))
						    ""))
					       " ")))))
	       (desc  (read-from-minibuffer "Description: "
					    (mapconcat
					     #'identity
					     (split-string
					      (or (cdr (assoc 'description
							      feedinfo))
						  ""))
					     " ")))
	       (href (cdr (assoc 'href feedinfo)))
	       (coding (gnus-group-name-charset '(nnrss "") title)))
	  (when coding
	    ;; Unify non-ASCII text.
	    (setq title (decode-coding-string
			 (encode-coding-string title coding)
			 coding)))
	  (gnus-group-make-group title '(nnrss ""))
	  (push (list title href desc) nnrss-group-alist)
	  (nnrss-save-server-data nil))
      (error "No feeds found for %s" url))))